可可肉的逻辑题---(四)把谁给丢了?
大家好,我是二厶可可肉,来自河北省石家庄市,现就读于北京理工大学,现隶属于北京爱乐游信息技术有限公司。
(四)把谁给丢了?
现在有一个长度为100W(万)的整形数组,里面的值为1~100W(无重复)这些数的存放顺序是杂乱无章的即随机存放,现在随机指定一个元素的值为0,问:丢了的元素值是多少?到底是谁丢了呢?
如果你细心观察,就会发现,可可肉的逻辑题有一个很大的特色:只要懂循环,会使用数组,基本上就可以做了。可可肉认为:技术并非编程重点,重点是解决问题的方法!当然,不断地学习,依旧很重要
希望大家喜欢
大家有兴趣的可以把自己做的答案发上来,共大家参考一下~
这里需要说一下,结果不是最重要的,重要的是解题思路
如果觉得还不错,就请点一下下面的“顶”吧!
您的支持是我创作的最大动力
鸣谢
师父
二厶可可肉
2012年10月22日
- 1楼ccc43542876昨天 10:23
- 简单想了一下,用hash的方法将原来的数组分成1000个...将置0之前和之后的数组都分1000组.每一组求和对比.和相等说明不在此组中..若不等,2个小数组求和作差即可知道是哪个数...nn不知道可行不可行..希望楼主给出更好的答案
- Re: cyrusliu昨天 23:02
- 回复ccc43542876n需要提示的是,长度为100W的那个数组是无序的。nn我的办法是:把数组中其他的元素累加起来,求出一个和,然后再算出1~100W的总和是多少,两个一减,得到的那个数,就是丢掉的那个数