首页 > 学院 > 开发设计 > 正文

LeetCode_136-Single Number

2019-11-06 07:35:58
字体:
来源:转载
供稿:网友

Solution:

思路:排序后进行左右比对

 int singleNumber(vector<int>& nums) {              sort(nums.begin(),nums.end());                for(vector<int>::iterator iter = nums.begin();iter!=nums.end();iter++){            if(iter==nums.begin() && (*iter != *(iter + 1))){                return *iter;            }            else if(iter==(nums.end()-1) && (*iter != *(iter - 1))){                return *iter;            }            else if((*iter != *(iter - 1)) && (*iter != *(iter + 1))){                return *iter;            }        }            }

int singleNumber(int a[], int n) { //xor all numbers, the left over number would be the non repeated one // since the equl numbers cancel out each others bits int num = 0; for (int i = 0; i < n; ++i) { num ^= a[i]; } return num; }


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表