集合 s 包含從1到 n 的整數。不幸的是,因為資料錯誤,導致集合裡面某乙個元素複製了成了集合裡面的另外乙個元素的值,導致集合丟失了乙個整數並且有乙個元素重複。
給定乙個陣列 nums 代表了集合 s 發生錯誤後的結果。你的任務是首先尋找到重複出現的整數,再找到丟失的整數,將它們以陣列的形式返回。
示例 1:
輸入: nums = [1,2,2,4]
輸出: [2,3]
注意:給定陣列的長度範圍是 [2, 10000]。
給定的陣列是無序的。
思路:
1.首先排序
2.然後遍歷陣列,當nums[i]=nums[i+1]時得出重複的數字
3.用數學的方法,n*(n+1)/2得出本來的和,再將所有陣列裡的值相加,前減後加重,得缺
**如下:
class
solution
}for
(int j=
0;j) lost=
(length*
(length+1)
)/2-sum+renum;
//缺=原陣列和-錯陣列和+重
return
newint
;}
645 錯誤的集合
鏈結 集合 s 包含從1到 n 的整數。不幸的是,因為資料錯誤,導致集合裡面某乙個元素複製了成了集合裡面的另外乙個元素的值,導致集合丟失了乙個整數並且有乙個元素重複。給定乙個陣列 nums 代表了集合 s 發生錯誤後的結果。你的任務是首先尋找到重複出現的整數,再找到丟失的整數,將它們以陣列的形式返回...
645 錯誤的集合
集合 s 包含從1到 n 的整數。不幸的是,因為資料錯誤,導致集合裡面某乙個元素複製了成了集合裡面的另外乙個元素的值,導致集合丟失了乙個整數並且有乙個元素重複。給定乙個陣列 nums 代表了集合 s 發生錯誤後的結果。你的任務是首先尋找到重複出現的整數,再找到丟失的整數,將它們以陣列的形式返回。示例...
645 錯誤的集合
集合 s 包含從 1 到 n 的整數。不幸的是,因為資料錯誤,導致集合裡面某乙個數字複製了成了集合裡面的另外乙個數字的值,導致集合 丟失了乙個數字 並且 有乙個數字重複 給定乙個陣列 nums 代表了集合 s 發生錯誤後的結果。請你找出重複出現的整數,再找到丟失的整數,將它們以陣列的形式返回。示例 ...