136. Single Number
leetcode easy
#array#csharp#easy#graph#leetcode
Task
Дан непустой массив целых чисел nums, в котором каждый элемент встречается дважды, кроме одного. Найдите этот единственный элемент.
C# solution
matched/originalpublic class Solution {
public int SingleNumber(int[] nums) {
List<int> no_duplicate_list = new List<int>();
foreach (int i in nums) {
if (!no_duplicate_list.Contains(i)) {
no_duplicate_list.Add(i);
} else {
no_duplicate_list.Remove(i);
}
}
return no_duplicate_list[0];
}
}C++ solution
auto-draft, review before submit#include <bits/stdc++.h>
using namespace std;
// Auto-generated C++ draft from the C# solution. Review containers, LINQ and helper types before submit.
class Solution {
public:
public int SingleNumber(vector<int>& nums) {
List<int> no_duplicate_list = new List<int>();
foreach (int i in nums) {
if (!no_duplicate_list.Contains(i)) {
no_duplicate_list.push_back(i);
} else {
no_duplicate_list.Remove(i);
}
}
return no_duplicate_list[0];
}
}Java solution
matched/originalclass Solution {
public int singleNumber(int[] nums) {
List<Integer> no_duplicate_list = new ArrayList<>();
for (int i : nums) {
if (!no_duplicate_list.contains(i)) {
no_duplicate_list.add(i);
} else {
no_duplicate_list.remove(new Integer(i));
}
}
return no_duplicate_list.get(0);
}
}JavaScript solution
matched/originalvar singleNumber = function (nums) {
var no_duplicate_list = [];
for (var i of nums) {
if (!no_duplicate_list.includes(i)) {
no_duplicate_list.push(i);
} else {
no_duplicate_list.splice(no_duplicate_list.indexOf(i), 1);
}
}
return no_duplicate_list[0];
};Python solution
matched/originalclass Solution(object):
def singleNumber(self, nums: List[int]) -> int:
no_duplicate_list = []
for i in nums:
if i not in no_duplicate_list:
no_duplicate_list.append(i)
else:
no_duplicate_list.remove(i)
return no_duplicate_list.pop()Go solution
matched/originalfunc singleNumber(nums []int) int {
no_duplicate_list := []int{}
for _, i := range nums {
found := false
for j, x := range no_duplicate_list {
if i == x {
found = true
no_duplicate_list = append(
no_duplicate_list[:j],
no_duplicate_list[j+1:]...)
break
}
}
if !found {
no_duplicate_list = append(no_duplicate_list, i)
}
}
return no_duplicate_list[0]
}