千家信息网

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

发表于:2024-10-27 作者:千家信息网编辑
千家信息网最后更新 2024年10月27日,小编给大家分享一下VB语言中如何实现冒泡排序法,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!本期案例:我们的原始数是一个数
千家信息网最后更新 2024年10月27日VB语言中如何实现冒泡排序法

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

本期案例:

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

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

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

达成目标:2 5 6 8

设计界面

点击按钮后的效果


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

将思想转换为代码。

比较的时候,其实就是使用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语言中如何实现冒泡排序法"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

0