Leetcode 136題 找出只出現一次的數

2021-10-10 09:47:06 字數 718 閱讀 2478

leetcode 考演算法-幾百道 簡單-中等-難

leetcode-136題

找出只出現一次的數

題面:給定乙個非空整型陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次,找出那個只出現一次的元素。

樣例:int a=,該陣列中5只出現一次,其餘數字都是成對出現的,要找出5。

方法1:暴力求解

int arr = ;

//找出單身狗

int i = 0;

int sz = sizeof(arr) / sizeof(arr[0]);

//計算陣列的元素個數

for (i = 0; i < sz; i++)

}if (count == 1)

}方法2:異或

int arr = ;

//3^3=0

//5^5=0

//a^a=0

//0^5=5

//0^3=3

//0^a=a

//353=5

//335=5

//異或是滿**換律

//123451234=5

int i = 0;

int ret = 0;

int sz = sizeof(arr) / sizeof(arr[0]);//計算陣列的元素個數

for (i = 0; i < sz; i++)

printf(「單身狗: %d\n」, ret);

LeetCode136題 只出現一次的數字

給定乙個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素。你的演算法應該具有線性時間複雜度。你可以不使用額外空間來實現嗎?根據題目描述,由於加上了時間複雜度必須是o n 並且空間複雜度為o 1 的條件,因此不能用排序方法,也不能使用map資料結構。func...

每日一題 Leetcode 136

給定乙個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素。說明 你的演算法應該具有線性時間複雜度。你可以不使用額外空間來實現嗎?輸入 2,2,1 輸出 1 輸入 4,1,2,1,2 輸出 4 這道題的難度值為easy,感覺更像是智力題。如果沒有對於空間限制...

leetcode 136 只出現一次的數字

給定乙個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素。說明 你的演算法應該具有線性時間複雜度。你可以不使用額外空間來實現嗎?示例 1 輸入 2,2,1 輸出 1示例 2 輸入 4,1,2,1,2 輸出 4 class solution return r...