using System.Collections.Generic;
public static int SingleNumber(int[] nums) {
foreach(int num in nums){
public static int SingleNumberHashed(int[] nums) {
Dictionary<int, bool> dataTable = new Dictionary<int, bool>();
foreach(int num in nums){
if(dataTable.ContainsKey(num))
dataTable.Add(num, true);
for(int i = 0; i < nums.Length; i++){
public static int[] SingleNumber3(int[] nums) {
Dictionary<int, bool> dataTable = new Dictionary<int, bool>();
List<int> result = new List<int>();
foreach(int num in nums){
if(dataTable.ContainsKey(num))
dataTable.Add(num, true);
for(int i = 0; i < nums.Length; i++){
public static void Main()
Console.WriteLine(SingleNumberHashed(new int [] {1,2,1,2,4}));
Console.WriteLine(SingleNumber(new int [] {2,2,3,2}));
var SingleNumber3Collection = SingleNumber3(new int [] {0,1,0,1,0,1,99});
foreach(var item in SingleNumber3Collection){