VB里冒泡排序法是怎么回事?麻烦举一个典型例子

如题所述

就是比较数值,把大的或小的放在前面
比如,有一个数组a()包含{5,7,3,9,12,15,56}7个数
dim t as integer
for i=0 to a.count-1
for j=i+1 to a.count-1
t=a(i)
if a(i)<a(j) then
a(i)=a(j)
a(j)=t
next
next
这时比较排序法
下面是冒泡排序
Private Sub Form_Load()

  Dim a,c As Variant

  Dim i As Integer,j As Integer,temp As Integer,bSwap As Boolean

  a = Array(17,45,12,80,50)

  For j = 0 To UBound(a) - 1

  bSwap = False

  For i = 0 To UBound(a) - 1

  If (a(i) > a(i + 1)) Then '若是递减,改为a(i)<a(i+1)

  temp = a(i)

  a(i) = a(i + 1)

  a(i + 1) = temp

  bSwap = True

  End If

  Next

  If bSwap = False Then

  Exit For

  End If

  Next

  For Each c In a

  Debug.Print c;

  Next

  End Sub
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-12-22
首先,你了解冒泡排序的机制,每个元素后面的元素比较,如果不到的背后,交换位置
在Private Sub SortIntegerArray(paintArray的()作为整数)
昏暗的lngX,只要
点心,只要
昏暗的intTemp作为整数
对于lngX = LBOUND(paintArray)(UBOUND(paintArray)的 - 1)
,对于lngY = LBOUND(paintArray)(UBOUND lngY (paintArray) - 1)
如果paintArray(lngY)> paintArray(lngY + 1),然后
intTemp = paintArray(lngY)
paintArray(lngY)= paintArray(lngY + 1) /> paintArray(lngY + 1)= intTemp

如果

下一页

END SUB
第2个回答  2012-12-20
5,3,4
-------

3,5,4
3,4,5

=====

5,3,4
-------

5,3,4
5,4,3本回答被网友采纳

能详细的告诉我 VB 里冒泡排序法么?最好要有个详细的举例。
冒泡现象的本质是因为重的要沉下去,所以轻的只好浮上来。冒泡排序法的过程为:对于数组的n个元素,从第1个起,每个与其下一个作比较,如果下一个的值小,就交换着两项的值。直到倒数第2个与最后一个比较完之后,数组中的最大数(或最小数)就被放到了最后一个位置(或第一个位置),然后对浮上...

VB冒泡排序 怎么比较的? 具体跟我写下
冒泡排序,顾名思义:以顺序排列为例,把最大的数 放到最后面,这个过程就好像:最大的数字 从底下往上冒的过程一样~而且是一层层的冒上来的。12 34 6 54 60 比较12和34, 12比34小,不交换位置 12 34 6 54 60 比较34和6, 34比6大,交换位置 12 6 34 54 60 比较34和54,...

vb冒泡法是怎么回事
冒泡法排序(递增)算法思想:(将相邻两个数比较,大的调到后头)1)有n+1个数(存放在数组a(n)中),第一趟将每相邻两个数比较,大的调到后头,经n次两两相邻比较后,最大的数已“沉底”,放在最后一个位置,小数上升“浮起”;2)第二趟对余下的n个数(最大的数已“沉底”)按上法比较...

vb冒泡法排序
冒泡排序法是一种简单直观的排序算法,以不断比较相邻元素并交换它们的顺序,直到整个序列有序完成排序。以下是VB语言中实现的冒泡排序算法的升序排序。定义一个子过程 PopoAsc,接收两个参数,第一个参数 Bobo() 为一个字符串数组,第二个参数 m 为数组的大小。在子过程内部,使用两个嵌套循环,外层...

vb 冒泡排序
首先,所谓的冒泡排序,因为书本上都这样引入的,就是河里的气泡是从下向上移动的,所以为了符合这种说法,在排序过程中,也就从数组下标的大的元素开始,向数组下标小的元素方向进行。数组排序要用双重循环:外循环的次数,决定了需要排序多少轮次,6个元素的数组,需要5轮,n个元素的数组,需要n-1轮次...

vb 冒泡排序,快救救我吧。我都混乱死了。到底计算机每一步怎么算出来...
计算机冒泡排序法是用两层循环,外循环i=1到5,内循环j=6到i。排序的思路是先把六个中最大的排到第一个,然后把剩下五个中最大的排到第二位,再把剩下四个中最大的排到第三位,以此类推 执行过程如下 第一次外循环,i=1,进入内循环,从第六到第一每次取两个数出来比较,如果大小顺序不...

vb中冒泡排序法详解
书上讲的是不容易理解我来给你说下比如 3,1,2,5,6,4 为例首先把数按顺序赋给数组 a(1~6) 不难吧然后给你提一点冒泡法最后一个数会确定下来第一个数,来下面:从大到小排: 1。for i = 1 to 6 2。 for j=i to 6-i 3。 if a(j)...

VB编程怎么排序
冒泡排序法思路:(假设有10个数,需要从小到大排)Dim a(10)Randomize For i = 1 To 10 a(i) = Int(Rnd * i + 3 + Rnd * 10) '给数组赋值 Print a(i);Next i Print For i = 1 To 10 ‘For j = i + 1 To 10 If a(j) < a(i) Then ’如果剩余的比a(i)小...

VB FOR循环及排序
冒泡排序法 冒泡排序(BubbleSort)的基本概念是:依次比较相邻的两个数,将小数放在前面,大数放在后面。即首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。重复以上过程,仍从第一对数开始...

VB冒泡排序法和选择排序法的优缺点比较
冒泡排序,在每一次比较的时候,如果发现相邻两数的次序不对,都会马上就把两数进行对调。选择排序,则在比较过程中(内循环里面)并不进行对调,而是先记录下最小(大)数的下标,在一次扫描完成后再进行对调。所以它的效率会比冒泡的高一点。但是冒泡排序是“稳定的”排序。就是说同样总分的若干名同学...

相似回答