Leetcode 136 只出現一次的數字

2021-08-29 04:10:51 字數 654 閱讀 5765

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

說明:你的演算法應該具有線性時間複雜度。 你可以不使用額外空間來實現嗎?

示例 1:

輸入: [2,2,1]

輸出: 1

示例 2:

輸入: [4,1,2,1,2]

輸出: 4

一般這種不使用額外空間,時間複雜度低的,用按位運算比較多

異或public class singlenumber {

public int singlenumber(int nums) {

int res = nums[0];

for(int i=1;i有1到10000之間的數,少了乙個,如何能最快的找到缺失的數字

按照異或的特性,可知,我先把1到10000做異或,取得的值與給定的集合元素做異或,則異或結果,即為所缺失的數字。

如:1^ 2 ^3 ^ 4 ^ 5 ^ 6 ^ 7 ^ 8 ^ 9 =x

1^ 2 ^3 ^ 4 ^ 5 ^ 6 ^ 8 ^ 9 =y

x ^ y = 7

因為相當於:

1^ 1^ 2 ^ 2 ^3 ^3 ^ 4 ^ 4 ^ 5 ^ 5 ^ 6 ^ 6 ^7^ 8 ^ 8 ^ 9 ^ 9 = 7

leetcode 136 只出現一次的數字

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

LeetCode 136 只出現一次的數字

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

Leetcode 136 只出現一次的數字

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