时间:2021-05-26
在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。
1.哈希法
2.定义备用数组,作为哈希使用,key是原数组每个元素 value是出现的次数
3.遍历哈希数组
hashfor i=0i;<arr.length;i++ hash[arr[i]]++;foreach hash as v return v<?phpfunction duplicate($numbers, &$duplication){ // write code here //这里要特别注意~找到任意重复的一个值并赋值到duplication[0] //函数返回True/False $flag=false; $hash=array(); for($i=0;$i<count($numbers);$i++){ $hash[$numbers[$i]]++;//关键 } foreach($hash as $k=>$v){ if($v>=2){ $flag=true; $duplication[0]=$k; break; } } return $flag;}$arr=[2,1,3,0,4];$res=duplicate($arr,$duplication);var_dump($res);var_dump($duplication);以上代码经过测试,希望对你有用,感谢大家对的支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
该PHP实例是从数组中选出重复数据的方法:
本文实例讲述了Python实现删除排序数组中重复项的两种方法。分享给大家供大家参考,具体如下:对于给定的有序数组nums,移除数组中存在的重复数字,确保每个数字
本文实例讲述了JS实现的数组去除重复数据算法。分享给大家供大家参考,具体如下:在JS中经常会遇到去除数组中重复数据的需求,在此介绍四种算法以实现JS数组去重的功
本文实例为大家分享了java实现二分法查找出数组重复数字的具体代码,供大家参考,具体内容如下packageoffer;/***二分查找的思想来找到数组中重复的数
本文实例讲述了php恢复数组的key为数字序列的方法。分享给大家供大家参考。具体分析如下: 这里实现php把数组的key值恢复成类似于0,1,2,3,4,