这次说明泡沫排序法,使用VB语言。
此次案例:
我们原来的数量是数组a
该序列a的数据依次为5~2~8~6
现在,对a的数据进行排序。 按从小到大的顺序排序
实现目标:2 5 6 8
设计接口
点击按钮后的效果
两个数据的比较思想是什么样的?
把思维转换成代码。
比较的时候,其实是使用if语句的时候。
text1的文本为5
text2的文本为2
怎么比较,取出小值?
ifval(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
ifa(I ) a ) jI ) then )相互作用
t=a(I )
a(I )=a (Ji ) )。
a(jI )=t
end if
next j
下一步
源代码如下:
optionexplicitdima(3) asintegerprivatesubcommand1_ click ) (a )0)=5a )1)=2a )=8a )=6Dim i%,j%,t% '
长按关注公众号
相关文章:
版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。