读书人

关于vb程序速度优化有关问题

发布时间: 2013-07-09 09:50:47 作者: rapoo

关于vb程序速度优化问题,急!
大家好!我按网上所说的优化方法(优化代码)去优化vb程序http://tieba.baidu.com/p/293365809#,可一直不见效(效果不明显),程序的运行速度还是跟优化前一样,请问各位大神该如何优化vb程序,从而提高程序的运行速度。谢谢!
[解决办法]
主要优化算法,去除没必要的操作,大循环中减少如a.b.c的运算。。。诸如此类
[解决办法]
程序性能常用衡量指标是时间和空间。
你给的链接中的方法主要是对空间的“优化”(其实只是一般的编程准则)。
[解决办法]
升级CPU或硬盘试试。
[解决办法]
VB 的 Timer() 函数返回从午夜开始到现在经过的秒数(带两位小数),一个步骤前后各调用一次,差值就是耗时。

[解决办法]

引用:
程序里用到的算法都很简单,比如求20个数中的最大、最小值和平均值之类的。我现在用的是先假设a(0)最大,然后逐一与后面的数比较,从而求出最大值,最小值也类似的方法求。请问能有其它较优的算法吗?在线等,谢谢!


不知道lZ用了什么高级算法,那么能耗时:

Private Sub Command1_Click()
Dim A() As Double
Dim n As Long
Dim i As Long

Randomize

n = Val(Text1)

ReDim A(n)
For i = 0 To n
A(i) = 30 + Rnd * 100
Next

Dim mMax As Double
Dim mMin As Double
Dim mSum As Double
Dim mAvg As Double
Dim t0 As Long
Dim mDif As Long

t0 = GetTickCount
For i = 0 To n
If mMax < A(i) Then mMax = A(i)
If mMin > A(i) Then mMin = A(i)
mSum = mSum + A(i)


mDif = mDif + A(i) * A(0)
Next

mAvg = mSum / i
mDif = Sqr(mDif) / i

Debug.Print "最大值=" & mMax & vbCrLf & "最小值=" & mMin & vbCrLf & "平均值=" & mAvg & vbCrLf & "均方根=" & mDif & vbCrLf & "耗时" & (GetTickCount - t0) & "(毫秒)"

End Sub


text1输入100000(十万)的运算结果:

最大值=129.998712539673
最小值=0
平均值=80.1427986230473
均方根=0
耗时16(毫秒)

读书人网 >VB

热点推荐