温馨提示×

VB语言中如何实现冒泡排序法

发布时间:2022-01-14 18:09:49 来源:亿速云 阅读:149 作者:小新 栏目:大数据

小编给大家分享一下VB语言中如何实现冒泡排序法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

本期案例:

我们的原始数是一个数组a

这个a数组的数据依次是:5   2   8   6

现要将a中的数据进行排序:从小到大

达成目标:2   5   6   8

设计界面

VB语言中如何实现冒泡排序法

点击按钮后的效果

VB语言中如何实现冒泡排序法


两个数据的比较思想是怎样的?

VB语言中如何实现冒泡排序法

将思想转换为代码。

比较的时候,其实就是使用if语句的时候。

text1中的文本是5

text2中的文本是2

如何比较,取出小的那个值?

if val(text1.text)>val(text2.text) then

    print text2.text  ’这里是小的值

else

    print text1.text  '这里是大的值

end if


本例冒泡排序的思想讲解:

冒泡排序,我们这里的排序是按照从小到大排序。

原始 5   2   8   6   在a这个数组中的。

实际就是:

a(0)=5

a(1)=2

a(2)=8

a(3)=6

小思想:先要找到最小的数字,然后,找到第二小,逐渐一个个找出来。

比较过程如下:

第一趟:找到最小的数字

 基准:以第一个数字作为基准。假设第一个数字是最小值,去跟后面所有的数进行比较。

 第一轮:2  5  8   6

 第二轮:2  5  8   6

 第三轮:2  5  8   6

第一趟的结果:2  5  8   6

第二趟:找出第二小的数字

 基准:以第二个数字作为基础。

 第一轮:2  5  8   6

 第二轮:2  5  8   6

第二趟结果:2  5  8   6

第三趟:找出第三小的数字

 基准:以第三个数字作为基准。

 第一轮:2  5  6  8

下面将思想转为代码:

  '开始趟数

  for i=0 to 2 step 1 

    ’开始轮数

    for j=1 to 3-i  step 1

       if a(i)>a(j+i) then '实现交互

          t=a(i)

          a(i)=a(j+i)

          a(j+i)=t

       end if

    next j

  next i

源代码如下:

Option ExplicitDim a(3) As IntegerPrivate Sub Command1_Click()a(0) = 5a(1) = 2a(2) = 8a(3) = 6Dim i%, j%, t%'开始趟数  For i = 0 To 2 Step 1    '开始轮数    For j = 1 To 3 - i Step 1       If a(i) > a(j + i) Then '实现交互          t = a(i)          a(i) = a(j + i)          a(j + i) = t       End If    Next j      Next i    For i = 0 To 3 Step 1    Print a(i)  Next iEnd Sub

以上是“VB语言中如何实现冒泡排序法”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

推荐阅读:IT编程语介绍

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

主题地图