排序之选择、冒泡和插入

来源:互联网 发布:anaconda mac 安装 编辑:程序博客网 时间:2024/06/02 06:56

关于这三种排序算法的概念和思想网上有很多,我肯定不会写得更专业,建议读者还是去网上查找自己能够理解的介绍。这里只是浅显地分享用vb来实现关键代码,因为我没有找到插入的vb版,当自己尝试着写出来并实现后,还是很兴奋的。

若用”i“来表示外循环变量,用”j”来表示内循环变量,用“t”来表示中间变量:

选择

    For i = 1 to n-1        For j=i+1 to n            If a(i)<a(j) Then                t=a(i)                a(i)=a(j)                a(j)=t            End If        Next j    Next i

冒泡

For i = 1 To n-1    For j = 1 To n - i          If a(j) < a(j + 1) Then            t = a(j)            a(j) = a(j + 1)            a(j + 1) = t        End If    Next jNext i

插入

For i = 1 To n-1    For j = 2 To n        If a(j) > a(j - 1) Then            t = a(j)            a(j) = a(j - 1)            a(j - 1) = t        End If    Next jNext i

后记:事后明白自己此处的“插入”算法的代码有误,为保留自己的学习过程,就保持原样了。请参考正确的代码:
再看”插入排序“

0 0