如何高效产生m个n范围内的不重复随机数(m<=n)
最近看到一道算法题,如何取100以内不重复的100个随机数?答案如下:
|
|
个人感觉题目很经典,实际生活中会经常遇到类似问题,但答案却如此低效,不免有一些失望,打开vs试了一把,果然2分钟都没跑完。
如果用上面的算法,把m、n放大到10000,估计程序1天都跑不完,效率令人发指。百度一下,发现《编程珠玑》一书收录该算法,题目为“如何高效产生m个n范围内的不重复随机数(m<=n)”。
那么该书中是如何解决该问题的呢?答案如下:
最近看到一道算法题,如何取100以内不重复的100个随机数?答案如下:
|
|
个人感觉题目很经典,实际生活中会经常遇到类似问题,但答案却如此低效,不免有一些失望,打开vs试了一把,果然2分钟都没跑完。
如果用上面的算法,把m、n放大到10000,估计程序1天都跑不完,效率令人发指。百度一下,发现《编程珠玑》一书收录该算法,题目为“如何高效产生m个n范围内的不重复随机数(m<=n)”。
那么该书中是如何解决该问题的呢?答案如下:
博主标准穷屌丝一枚,虽然一直眼馋mbp,但苦于手头米有限,只是在虚拟机中玩玩MacOS。(我才不会告诉你我笔记本i5+120SSD+500HHD+12G内存,跑MacOS虚拟机一点不卡,貌似还是摆脱不了我是穷屌丝的事实,哎)
今天把虚拟机中的Mavericks升级到Yosemite,准备看看iOS8的新特性,开发个通知中心的app玩玩,谁知道虚拟机vmdk的文件从20G飙升到了38G,120G的ssd果断爆了,虽然系统是升级完成了,但是xcode却没有空间安装了。
最近做了一个简单的后台管理系统,其中用到了 jQuery EasyUI 框架,在此把首页布局代码分享给大家,希望大家可以用得上,具体效果如下图。
最近啃完了《Node.js开发指南》一书,并按书中 Demo 敲完了的所有代码。Node.js 发展的很快,书中使用的组建目前都已经是旧版本,导致 Demo 并不能正常运行,博主记录了开发 MicroBlog 项目时遇到的所有问题,特此分享给大家。
问题一:
|
|
问题二:
|
|
最近在用 Visual Studio 调试时,经常出现“加载….符号缓慢的问题”,快的时候5分钟能出来,慢的时候就直接死掉了。
我一直以为是解决方案中的项目太多导致的(100多个项目),嫖过度娘才发现这是个普遍存在的问题,而且 VS2005、VS2008、VS2010、VS2012、VS2013 均有可能出现这个问题,原因是加载符号是需要联网下载,所以耗费了大量的时间。
具体解决方法如下:
1.打开VS的 工具->选项->调试->符号
2.取消勾选“Microsoft符号服务器”
3.点击“清空符号缓存”按钮
4.重启 Visual Studio
完成以上三步即可解决该问题,大伙可以参考一下。