问题描述
- 关于一个大数据量的查找算法
-
如果有一到一亿个数乱序排列,可以操作最后一个位置前面的所有数,问怎么才能最快知道最后一个位置的数是多少?
解决方案
就是遍历读取排列中的数据,以数据作为数组的下标,同时给这个数组元素赋值为1。这样把排列中倒数第二个以前所有数据过一遍。
最后把数组再遍历一次,看那个元素值为0,它的下标就是排列最后一个。
解决方案二:
开一个100000000元素的数组arr,遍历数字,如果一个数字是123,那么就让arr[123]加1,以此类推。
相当于基数排序。
时间: 2025-01-28 09:51:03