ETH官方钱包

前往
大廳
主題

Codility測試題答案優化

Yang | 2022-09-29 07:50:32 | 巴幣 0 | 人氣 441

接續前一篇文章,線上程式設計考試Codility測試題,答案還能再優化,之前想的太複雜了

以下直接暴雷答案,想自行挑戰的讀者請勿往下看


還好Codility沒記憶體使用量測試,上次的答案太浪費記憶體,這次答案減少75%記憶體使用量(int[] -> bool[]),運行速度也更快











class Solution {
    public int solution(int[] A) {
        
        const int arrMax = 1000001;

        bool[] _a = new bool[arrMax]; //空間換時間

        foreach (int item in A)
        {
            if (item <= 0)
            {
                continue;
            }

            _a[item] = true;
        }

        for (int i = 1; i < arrMax; ++i)
        {
            if (!_a[i])
            {
                return i;
            }
        }

        return 1;
    }
}
送禮物贊助創作者 !
0
留言

創作回應

相關創作

更多創作