|
|

楼主 |
发表于 2008-10-23 11:26:00
|
显示全部楼层
Re:流行的算法?
谢谢ls大大
我也觉得基本功很重要
不过笔试的时候常出算法题阿
之前出了一题我到现在还没想出来
大概是把1-100000存在一个数组中,然后任意取两个数出来,再把剩下的99998个数乱序放回数组A中,问只允许遍历数组一次,允许使用5个局部变量,不允许使用数组变量,如何找出这两个数是什么?
有个大概的想法是从A[0]开始,假设A[0]是88,就访问A[88],一直下去直到A[X]下面没有数,那么令A[Y]=X的Y就是被拿出来的一个数,但是我不知道接下来应该找到下一次的开始的起点了,从A[1]开始显然是不可行的,因为A[1]可能在上一次就被访问过了,从A[1]开始只能是又陷入了上一次的过程之中;又有可能出现A[0]=7;A[7]=0;的情况,这样也无法确认下一次访问应该从哪里开始。。。
各位大大有没有更好的思路? |
|