以下是我的第二種寫法,用空間換了點時間,用C++語言寫的:
1. include
1. include
using namespace std;
class Rand4{
private:
int a[10];
int getNum(int index){
while(a[index]==-1){
++index;
index %= 10;
}
int ret = a[index];
a[index] = -1;
return ret;
};
void init(){
for(int i=0;i<10;++i){
a[i] = i;
}
};
public:
int Next(){
init();
int ret = (rand()%10) *1000;
int index = 100;
int time = 3;
while(time>0){
ret += getNum((rand()%10))*index;
index /= 10;
--time;
}
return ret;
};
};
int main(int argc, char *argv[])
{
Rand4 r4;
cout<
cout<
cout<
system("PAUSE");
return 0;
}
此法的時間復雜度為正宗的O(n),空間開銷(不包含調用庫函數的)就比前一個例子多了些.
此法在n取m的隨機計算中,m從0一直到趨于n, 效率都是不變的.
其他的高效方法暫時還沒有想出.
金山職業技術學院對比四川汽車職業技術學院哪個好 附分..
時間:2025-05-22 09:08:12成都銀杏酒店管理學院在重慶高考招生計劃人數和專業代..
時間:2025-05-22 09:05:01四川上山東理工大學多少分 分數線及排名
時間:2025-05-22 09:01:18江西高考理科533分排名多少 排名多少位次
時間:2025-05-22 08:57:21大連東軟信息學院對比甘肅民族師范學院哪個好 附分數線..
時間:2025-05-22 08:53:39廣東高考455至460分左右物理可以上什么大學
時間:2025-05-22 08:49:52
中國點擊率最高的一篇文章 !2023-08-13 03:45:29
海南上長春工業大學多少分 分數線及排名2025-05-22 09:28:45
科爾沁藝術職業學院對比山東水利職業學院哪個好 附分數線排名2025-05-22 09:25:00
呼和浩特職業學院對比山西警官職業學院哪個好 附分數線排名2025-05-22 09:22:04
四川工程職業技術學院在上海高考招生計劃人數和專業代碼(參考)2025-05-22 09:19:52
泰山科技學院對比西安理工大學高科學院哪個好 附分數線排名2025-05-22 09:16:28
江西航空職業技術學院在云南高考招生計劃人數和專業代碼(參考)2025-05-22 09:13:20
遼寧特殊教育師范高等專科學校對比江西工商職業技術學院哪個好 附分數線排名2025-05-22 09:10:51
2018最新南方電網筆試題和面試題答案2023-08-16 12:02:48
全國計算機等級考試二級C語言筆試題和面試題答案2023-08-19 10:59:28
計算機二級c語言筆試題和面試題答案(2018最新)2023-08-17 11:48:11 




