Http://www.cnng.net  首页 原创软件   VB文挡  VB资源   乱舞人生  资源   Tags  给我留言 
用户登陆
用户:
密码:
 

站点日历
73 2024 - 3 48
     12
3456789
10111213141516
17181920212223
24252627282930
31


站点统计

最新日志
批量重命名-XReName V 1.0 取消文本框的粘贴功能
晴天 夯实基础之冒泡排序法   [ 日期:2007-07-22 ]
'昨天去应聘 VB程序员 的职位
'本来满怀信心,结果被一个小问题(平时很不在意)给难住了

'就是基础问题,公司要求写个排序的算法(我平时老是拈人家的来用)
'这应聘的结果就是不言而喻的

'吸取的教训是:一定要注重基础的夯实工作,不然就是轻飘飘的,浮的
'             这里给大家带来这样一段我的故事,望大家引以为戒

'回来就仔细拜读一个叫 马大哈 的算法
'自己又重新写作,写来了我的冒泡排序法
'其中独立了 冒泡函数
'大家可以拈来用,但更期望的把自己的基础夯实

'有空的时候去看看我的小屋,可能会有你意想不到的收获
'石陆软件屋
'http://www.cnng.net

程序代码:[ 复制代码 ] 
Option Explicit
'石陆软件屋
'http://www.cnng.net
Dim aa() As String, bb() As Double


Sub BubbleSort(List() As Double)                '冒泡排序算法
Dim First As Double, Last As Double             '开始,结束
Dim i As Integer, j As Integer
Dim Temp As Double                              ' 交换位置的临时变量

First = LBound(List)
Last = UBound(List)

For i = First To Last - 1
    For j = i + 1 To Last
        If List(i) > List(j) Then               '如果这个数大于下一个数
            Temp = List(j)                      '交换位置
            List(j) = List(i)
            List(i) = Temp
        End If
    Next j
Next i
End Sub

Private Sub Command1_Click()
    Dim i As Long
    aa = Split(Text1.Text, ",")                 '取得操作数
    ReDim bb(UBound(aa))
    For i = 0 To UBound(aa)
        bb(i) = CDbl(aa(i))                     '转换为数字类型
    Next
    
    BubbleSort bb                               '调用排序算法函数
    
    Text2.Text = ""
    For i = 0 To UBound(bb)                     '显示结果
        Text2.Text = Text2.Text & " <" & bb(i)
    Next
End Sub

Private Sub Form_Load()
Text1.Text = "1,2,5,4,8,7,1.2,3.6,78"
End Sub



相关链接:vb | 冒泡排序 | 夯实基础

[阅读字体大小: ]
[本日志由 admin 于 2013-11-01 10:55 PM 编辑]
引用通告地址 (0):
复制引用地址http://www.cnng.net/blog/trackback.asp?tbID=48
复制引用地址http://www.cnng.net/blog/trackback.asp?tbID=48&CP=GBK
暂时没有评论
发表评论 - 不要忘了输入验证码哦!
作者: 用户名:  密码:   注册? 验证码: 
评论:

禁止表情
禁止UBB
禁止图片
识别链接
识别关键字
表  情