LC-出現一次的數字II
出現一次的數字II
//SingleNumberII
/*現在有一個整數型別的陣列,陣列中只有一個元素只出現一次,其餘元素都出現三次。你需要找出只出現一次的元素
注意:
你需要給出一個線性時間複雜度的演算法,你能在不使用額外記憶體空間的情況下解決這個問題麼? */
class Solution {
public:
/**
*
* @param A int整型一維陣列
* @param n int A陣列長度
* @return int整型
*/
//int型別共32位,將陣列中n個數二進位制各位1累加後%3,若為出現三次的數,該位為0,若為1則
//說明是僅出現一次的數的二進位制位。
int singleNumber(int* A, int n) {
int res = 0;
for (int i = 0; i < 32; ++i)
{
int bit = 0;
for (int j = 0; j < n; ++j)
{
bit += (A[j] >> i) & 1; //右移i位與0000001求餘得到最後一位(迴圈中當前第i位)
} //的數值
res |= (bit % 3) << i; //求餘判斷該為是否為重複數值,左移恢復原位置,
} //或運算組合
return res;
}
};
相關文章
- 只出現一次的數字 II
- LeetCode 只出現一次的數字IILeetCode
- Leetcode 137:只出現一次的數字 II(最詳細的解法!!!)LeetCode
- 136只出現一次的數字
- LeetCode 只出現一次的數字LeetCode
- 136. 只出現一次的數字
- 只出現一次的數字--力扣力扣
- LeetCode 只出現一次的數字IIILeetCode
- LeetCode136 只出現一次的數字LeetCode
- LeetCode之只出現一次的數字-SwiftLeetCodeSwift
- 找出陣列中只出現一次的數字陣列
- 力扣136.只出現一次的數字力扣
- leetcode136. 只出現一次數字LeetCode
- leetcode力扣136.只出現一次的數字LeetCode力扣
- JZ-040-陣列中只出現一次的數字陣列
- LeetCode每日一題:只出現一次的數字(No.136)LeetCode每日一題
- LeetCode 136. 只出現一次的數字【c++/java詳細題解】LeetCodeC++Java
- 在其它數都出現k次的陣列中找到只出現一次的數陣列
- 資料庫180:連續出現的數字資料庫
- input 限制字數輸入時候 限制字數會出現負數
- 統計陣列中各數字(元素)出現的次數陣列
- [題解] 條件變數實現數字的交替輸出變數
- Matlab tabulate統計數字出現的次數,如果陣列中出現0Matlab陣列
- 找出陣列中第 k 大的數字及其出現次數陣列
- Matlab 統計陣列中各數字(元素)出現的次數Matlab陣列
- 劍指 Offer 56 - I. 陣列中數字出現的次數陣列
- 第一次只出現一次的字元字元
- 統計一個字串出現頻率最高的字母/數字字串
- 數字沙盤的應用表現出的四大特點
- 數字展廳設計所表現出的應用優勢
- 給定一個非空整數陣列,除了某個元素只出現一次以外,其餘每個元素均出現兩次。找出那個只出現了一次的元素。陣列
- 智慧數字經營的出現能夠解決哪些實際問題?
- 第一個只出現一次的字元——Java字元Java
- 數字化之路(四):企業數字化轉型的若干發現
- 454_四數相加Ii
- 三維數字沙盤應用所表現出的七大特點
- python實現:輸入2個整形數字,輸出最大值Python
- 2351. 第一次出現兩次的字母