我不聰明,但我會很努力
現在有1千萬個隨機數,隨機數的范圍在1到1億之間。現在要求寫出一種算法,將1到1億之間沒有在隨機數中的數求出來。
一個32位的整數32位表示32個數,1億/32 = 3125000,使用3.125 * 4m即可保存1億個數. 對于數n,(n-1) / 32 為其在數組中的下標,table[(n - 1) % 32]與數組中此下標的值使用或操作。
表中值為0000001, 0000010, 0000100等這樣的表示方式,具體的數值使用查表法加快速度
最后算某值是否存在,使用與操作即可計算出
Powered by: C++博客 Copyright © 逛奔的蝸牛