数leetcode-配列番号が表示されています

タイトル

両図に加えて、整数配列NUMS、他の図は二回表示されます。これら二つの図が表示されるだけで検索するプログラムを作成してください。必要とされる時間複雑度は、O(N)であり、空間的複雑さはO(1)です。

思考

1:ビット操作が、一般的に持たない、被験体は、変更されない場合
2:ハッシュテーブルは、一般的な持っている、あなたは、図面の任意の数を見ることができる表示されますが、対象が2 <NUMS与えられるスペースの費用で<10000は、10000配列にヒープ点ので、数字のそれぞれの元の配列は+1に対応するハッシュテーブルに一度表示されませんでした、過去の基礎となるハッシュテーブルマッピングのサイズでデジタル形式です。

 #define MAX_VALUES 10001
int* singleNumbers(int* nums, int numsSize, int* returnSize){
    int* arr=(int*) calloc(sizeof(int) , MAX_VALUES);
    for(int i=0;i<numsSize;i++){
        arr[ nums[i] ]++;
    }
    int *new_arr=malloc(sizeof(int)*2);
    int k=0;
    for(int i=0;i<MAX_VALUES;i++){
        if(arr[i]==1)
            new_arr[k++]=i;
    }
    *returnSize=2;
    return new_arr;
}
公開された19元の記事 ウォンの賞賛1 ビュー3122

おすすめ

転載: blog.csdn.net/qq_41603639/article/details/104927966