回 帖 发 新 帖 刷新版面

主题:用VB能做出比这个更快或是与之速度相当的,并全部列出排列组合数据

我想做一个福利彩票的选号小工具,就是对35个号码从中任选7个的那种,本人看了许多代码,试验过许多方法都不太好,最近在网上看到这个用易语言写的极速全排列,试过了觉得速度真的是挺快!但我只学习了VB,所以一直弄不懂这个用易语言写的为何能如此之快!!在此发贴希望能得到各位大侠的帮助,如果可以请与我联系!最后我会把做成的小工具分发给大家!谢谢!
   
lk2000mail@126.com  QQ_42382397 相学谨

回复列表 (共11个回复)

沙发

怎么没人理我呀!有好的方法吗?

板凳

不知道兄台那代码运行花了多长时间,在vb中实验过10选6的,在赛扬1.7上输出到文件大概是330毫秒。猜测如果算35选7,大概可能要多花200倍的时间,大概分把钟吧。

   vb中还有个简单的办法,就是利用集合的枚举算子来枚举所有的可能,不过比用操作内存缓冲区的方法可能要慢10-30倍左右的样子,也就是说,可能要花半个小时左右,不过这个算法的代码很简单,不会超过50行。

3 楼

我现在想把组合的结果输出到屏幕上,比如一些表格控件中,如果真的这样子做了,那可能要花五分钟以上的时间了!!所以在此求教,如何能更快输出!

4 楼

输出到控件的我没全部测,但是如果输出到文本框,只有先输出到文件,然后再载入到文本框了,这个也花不了多长时间,大概多花1秒吧,但是如果边产生,边输出,估计得N个小时,太慢了

5 楼

呵呵,不会是一次全部排列出来的。每次排1000注。

6 楼

那就用集合枚举吧 
1000注  太快了
15万注  输出到文件  用集合很慢 但是也只花3秒多

7 楼

输出到文本文件,那样并不能直观的体现出来!象这个用E语言做的直接输出到表格的形式,用VB可以做出来吗?

8 楼

对什么易语言不感兴趣
如果你打算用vb做  就补习下vb基础

9 楼

你的工具是做什么用的,为什么要把全部排列列出来?

10 楼

[quote]
如果你打算用vb做  就补习下vb基础[/quote]

这个问题的关键不在于会不会做,有没有VB基础,而在于做出来的效率高不高。这种可不是光具备VB基础就能做出来的。

我来回复

您尚未登录,请登录后再回复。点此登录或注册