符号:^
按位异或,规则:相同为零,相异为一。
实际举例:一组数据中只有一个数字出现了一次。
其他所有数字都是成对出现的。请找出这个数字。(使用位运算)
代码实现:
#include <stdio.h> int main() { int arr[]={1,2,3,4,5,6,1,2,3,4,5,6,7}; int i=0; int find=0; for(i=0;i<sizeof(arr)/sizeof(arr[0]);i++) { find ^= arr[i]; } printf("%d\n",find); return 0; }
结果为:7
时间: 2024-10-22 17:43:26