

VB QQ群:47715789
[此贴子已经被作者于2007-7-1 8:44:42编辑过]
源码已收到,但下次请把整个工程打包发送至邮箱,还有就是如果发送多次,请以版本号来区分。如缘子弹_001_B_1、缘子弹_001_B_2
还有你的算法耗时较长是因为你每次都运行了一次接1乖,你可以考虑使用49#所说的算法。
[此贴子已经被作者于2007-7-1 9:26:38编辑过]
你即然已经做出来了为何不参赛呢?重要参与,论坛开出PK赛活动为的就是让大家在不断修改程序中累积经验。自己在调试程序时所学到的经验是在书上学不到的。
我做的只是个示例,是不参赛的,示例题只是我看到出题一个星期都没动静才自己先做个放上来的,目的只是为了激励大家。
只能说是到目前为止,我期待计算速度更快的作品出现
仔细检查过vbc的源码,其中忽略了部分数据精确性,在某此情况下可能会出现答案不正确,建议仔细验证算法,如果为了追求速度而丢失数据正确性的话那是不值得的。当然,如果验证所以情况下都没问题的话,那自然不用重写算法了。
[此贴子已经被作者于2007-7-2 16:04:09编辑过]
请问你们用来计算程序运行时间的方法是怎么样的??
在113楼(第8页中)有计算时间的代码,如果你想获得比较精确的运行时间值的话,你可以加进自己的代码中。
已经很全了
'******************************************************************************************************
Private Declare Function QueryPerformanceCounter Lib "kernel32" (lpPerformanceCount As Currency) As Long
Private Declare Function QueryPerformanceFrequency Lib "kernel32" (lpFrequency As Currency) As Long
'这两段API声明放在代码的最顶端
'*******************************************************************************************************
'*******************************************************************************************************
Dim mcurFreq As Currency, curCounter1 As Currency, curCounter2 As Currency '系统高精度计数器频率
QueryPerformanceFrequency mcurFreq
QueryPerformanceCounter curCounter1'取得开始时间
'这段代码放在开始计时的代码前
'********************************************************************************************************
'这里是函数处理代码(你的计算代码和输出代码放在这里)
'********************************************************************************************************
QueryPerformanceCounter curCounter2 '取得结束时间
'精确到毫秒
If mcurFreq <> 0 Then'支持高精度计数
curCounter2 = (curCounter2 - curCounter1) / mcurFreq
Else'不支持
curCounter2 = curCounter2 - curCounter1
End If
'**********************************************************************************************************
'在这里输出curCounter2就行了,其值就是你处理数据的函数所耗时间,建议用Format(curCounter2,"#0.000") & "秒"输出,这样直观一些