几个找数字的小题目

您所在的位置:网站首页 找s的标题 几个找数字的小题目

几个找数字的小题目

2024-07-17 12:01| 来源: 网络整理| 查看: 265

N+1个数字,其中有一个是重复的,要求找出来。 方法:累加后的和减掉1~N的和就是重复的那个数字。 方法2:使用bitmap或者hash表

1~N中缺少一个数字,要求找出来 方法1:累加后的和被1~N来减,就是那个数字 方法2:hash表。

N个数字是偶数对出现的,有个数字是单独出现的,要求找出来。 方法:所有数字进行异或,最后的值就是那个数字(a^a = 0)

N个数字是偶数对出现的,有两个数字(不相同)是奇数次出现的,要求找出来。 方法: 1 不断异或求得值为X,则X=a^b(其中ab就是那两个奇数次出现的数字) 2. 因为a!=b,所以X!=0。假设X的第K位为1 3. 则令X和所有第K位为1的数字进行异或,所得的数字即为ab中的一个。 4. X和3的结果进行异或就是ab种的另外一个。



【本文地址】


今日新闻


推荐新闻


    CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3