LeetCode : Single Number

来源:互联网 发布:数据恢复精灵激活码 编辑:程序博客网 时间:2024/06/05 13:37

第一种方法,用哈希表。

map<int, int>ary;for (int i = 0; i < n; i++){    if (ary.find(A[i]) == ary.end())        ary.insert(pair<int, int>(A[i], i));    else        ary.erase(A[i]);}map<int, int>::iterator it = ary.begin();return it->first;

第二种方法,逐位异或。

int result = A[0];if (n != 1)    for (int i = 1; i < n; i++)        result = result ^ A[i];return result;

逐位异或可以明显提高执行效率。

0 0
原创粉丝点击