关于一个循环历遍的问题 在一个20*20的个小格子的平面,有4个球,每个球的直径是两个小格子的大小,我想历遍整个平面,看小球在平面上有几种排列位置。有一个要求,小球的位置不能重叠,例如,球A占了1、2、11、12这四个格子的时候,其他的球就不能再占用其中的格子了。这个循环怎么写才更有效率?因为当中需要判断是否重叠了。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 看来你对算法的复杂度完全没概念,先缩缩水,算总共6亿组可能。先说数据量的问题,4个坐标4个字节放不下,就算按照4个字节能放下,已经需要2.4g的内存了,实际上32位程序根本放不下接着是时间复杂度,假设解决了内存的问题,不用通过更慢的外存,但是每次都还是要和已经有的数据进行比较。现在假设你的算法很好,得出一次结果平均只需要1亿次比较,其它操作时间完全忽略不计;并且你的cpu极强,每300亿次比较耗时1秒,那么总共只要200万秒就可以结束了也就是说,只要二十月天就可以得出全部的结果了实际上要解决的问题还很多,cpu速度不可能那么快,有没有可以实现平均每轮比较只相当于1/2数据量的1/3次数比较的算法还是个问号觉得怎么样,还打算玩么? 求LISTVIEW在FRSTREPORT中打印代码 请教各位先知,关于delphi 编程完全控制Flash 动画 (急) 年底救人,界面问题。。。。 怎么样识别用户按下“CTRL”+“V”键,并触发事件发生 fastreport的打印代码是什么? 如何用Delphi计算两个日期相差几个月另几天? 我用的是indy控件组做的ftp功能,想实现多文件同时传输或文件夹传输,但不知道怎样实现?散分! 怎样获取ComboBox1中下一个Item的值? 關于Tquery的用法!這里不知道哪里錯啦! 一个鼠标拖动的问题!! 如何统一窗体的界面工具栏? tstrings
先说数据量的问题,4个坐标4个字节放不下,就算按照4个字节能放下,已经需要2.4g的内存了,实际上32位程序根本放不下
接着是时间复杂度,假设解决了内存的问题,不用通过更慢的外存,但是每次都还是要和已经有的数据进行比较。现在假设你的算法很好,得出一次结果平均只需要1亿次比较,其它操作时间完全忽略不计;并且你的cpu极强,每300亿次比较耗时1秒,那么总共只要200万秒就可以结束了
也就是说,只要二十月天就可以得出全部的结果了
实际上要解决的问题还很多,cpu速度不可能那么快,有没有可以实现平均每轮比较只相当于1/2数据量的1/3次数比较的算法还是个问号觉得怎么样,还打算玩么?