[阅读: 506] 2009-03-20 08:57:47
就拿3等奖来说
1.7次循环每次循环10w条记录是没有必要的,一次都不用。
2.生成的随机数到记录之间的对应,如果STRINGLIST是链表结构,那这个对应可能隐藏着一次10W次的循环,这个也是没必要的,应该改成基于 树结构的容器。
3.删除一条记录,得看你程序的具体写法,有可能隐藏着一次10W次的循环,也是没必要的。
正确的做法应该是:
总的容器改成hash map或map
另外用7个小容器,对应7个部门
循环直到抽出300个将
生成随机数,抽一个人出来
根据他的部门放到对应的小容器里,并从大容器里删掉,如果小容器满了,则忽略
这样做,估计要不了1/10秒就抽完了。
试图在互联网上划出国界的举动是愚蠢的!!!
把人当成猪羊圈养,草料永远都不够!把人当人待,人有无限的创造力! “人口减少一半,人们两倍富有”的观念为“一种非常糟糕的自甘堕落—这背后的潜台词是,似乎中国人是封闭围栏中的动物,对周围那些自己赖以生存的资源,除了咀嚼,别无办法。”
我的像册:
http://picasaweb.google.com/bjwf2000/
我的主页:
http://bjwf2000.googlepages.com/