一道编程题,大量数据优化+速度
谁能够不使用数组,集合,链表等数据结构快速随机不重复地输出1万亿以内的....所有数
我自己想到一个感觉上比较好的答案,答案公布的时候我会修改标题重新编辑
大家有什么好思路也发表一下,交流下, 看看谁的办法更好更快捷
这个是你的作业吧? 只输出整数吧=,= 做不出来吧 还是先说说楼主的看法吧 计次循环首(10x10^11,i)
调试输出(i)
计次循环尾() 仅仅输出1万亿的数并不需要多少时间!
{:301_991:}菜B的易语言不敢拿出手 10万不难,十万亿也太多了吧。。。 本帖最后由 \CPU\ 于 2012-12-9 19:58 编辑
思路:文本型寄存变量,取随机数n,输出前判断是否在寄存变量中,如果存在就返回重新取,不存在就输出n并在寄存变量里增加并且输出次数加一。如果输出次数等于十亿则调试完毕。
.版本 2
.子程序 __启动窗口_创建完毕
.局部变量 limit, 整数型
.局部变量 寄存变量, 文本型
.局部变量 n, 整数型
.局部变量 i, 整数型
置随机数种子 ()
limit = 10 × 10 ' 求次方 (10, 11)
.循环判断首 ()
n = 取随机数 (0, limit)
.如果真 (寻找文本 (寄存变量, “[” + 到文本 (n) + “]”, , 假) = -1)
输出调试文本 (n)
i = i + 1
寄存变量 = 寄存变量 + “[” + 到文本 (n) + “]”
.如果真结束
.循环判断尾 (i ≠ limit)
暂停 ()
页:
[1]
2