当先锋百科网

首页 1 2 3 4 5 6 7

Leetcode 基础算法题 c#
给定一个非空整数数组,除了某个元素只出现一次以外,其余每个元素均出现两次。找出那个只出现了一次的元素。
说明:
你的算法应该具有线性时间复杂度。 你可以不使用额外空间来实现吗?

示例 1:
输入: [2,2,1]
输出: 1

示例 2:
输入: [4,1,2,1,2]
输出: 4
解法一:

public class Solution {
    public int SingleNumber(int[] nums) {
        
                    int number = 0;
            int result=0;
            bool isSingle =true ;
            int i, j;          
            for ( i = 0; i < nums.Length; i++)
            {
                number = nums[i];
                for ( j = 0; j < nums.Length; j++)
                {
                    if ((i!= j))
                    { 
                       if (number == nums[j])
                        {
                            isSingle = false;
                            break;
                        }
                        else if (j == nums.Length -1)
                         {
                            result = nums[i];
                             break;
                         }
                         else
                          {
                             continue;
                         }
                    }
                    else 
                    {
                        if (j == nums.Length - 1)
                        {
                            result = nums[i];
                            break;
                        }
                        else
                        {
                            continue;
                        } 
                    }
                }
                if (isSingle == true)
                {
                    result = number;
                    break;
                }
            }
            return result;
    }
}

完毕。