冒泡排序专题

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、例题回顾

例1、某书店在5所学校流动售书量(单位:本)分别是82、113、46、69、35。

例2、有一组原始数据:23、25、18、63、84、77、65、9、33、17。利用冒泡排序算法进行从小到大排序,最多需要进行()次加工,()次比较,才可以完成整个数据的排序。

有一组数据,采用冒泡排序第一遍排序以后数据为 4,10,5,32,6,7,9,17,

24 那么该数组原来顺序不可能的是()

A.10,5,32,6,7,9,17,24,4

B.10,5,32,6,7,9,17,24,4

C.10,5,32,4,6,7,9,17,24

D. 4,10,5,32,9,17,24,6,7

3、在某年市机器人投篮比赛中,共有5支队伍参加,各队的最终成绩如下:82、7

4、66、9

5、70(单位:个/分钟),现用冒泡排序算法来实现这些数据的排序操

A.1次

B.2次

C.3次

D.4次

4、某书店在5所学校流动售书量(单位:本)分别是82、113、46、69、35。采用冒泡排序对其进行排序,若完成第一遍时的结果是3

5、82、113、4

6、69,则完成第二遍时的结果是()

A. 35、82、113、46、69

B. 35、46、82、69、113

C. 35、46、82、113、69

D. 35、46、69、82、113

5、实现某排序算法的部分VB程序如下:

For i = 1 To 4

For j = n To i + 1 step -1

If a(j) < a(j-1) Then t = a(j):a(j) = a(j-1):a(j-1) = t

Next j

Next i

在经过某一遍排序“加工”后,数组元素a(1)到a(5)的数据依次为“25、77、

51、59、32”。则下一遍排序“加工”后数组元素a(1)到a(5)的数据应该是

()

A. 25、32、77、51、59

B. 25、32、51、59、77

C. 25、32、59、51、77

D.25、32、51、77、59

下列数据进行冒泡升序排序,在排序过程中效率最低的是()

A. 77、59、51、32、25

B. 25、32、51、59、77

C. 25、32、59、51、77

D.25、32、51、77、59

6-1、将5个数据“7,12,23,1,16”依次存放在数组a(1)到a(5)中,使用如下VB程序段对5个数据进行从大到小排序。

For i = 1 To 2

For j = n To i+1

If a(j) >a(j-1) Then

temp=a(j) : a(j) = a(j-1) : a(j-1)=temp

End If

Next j

Next i

则程序段运行之后,数组a(1) 到a(5) 中的数据依次为()

A. 7,1,12,16,23

B.23, 16,7,12,1

C.1,7,16,12,23

D.7,12,1,16,23

6-2、将5个数据“7,12,23,1,16”依次存放在数组a(1)到a(5)中,使用如下VB程序段对5个数据进行从大到小排序。

For i = 1 To 2

For j = 1 To 5-i

If a(j) >a(j+1) Then

temp=a(j) : a(j) = a(j+1) : a(j+1)=temp

End If

Next j

Next i

则程序段运行之后,数组a(1) 到a(5) 中的数据依次为()

A. 7,1,12,16,23

B.23, 16,12,7,1

C.1,7,16,12,23

D.7,12,1,16,23

7、有如下程序段:

s = “”

For i = 1 To 3

For j = 6 To i + 1 Step -1

If a( j ) > a( j-1 ) Then

k = a( j ) : a( j ) = a( j-1 ) : a( j-1 ) = k End If

Next j

s=s + str ( a( i ) )

Next i

Text1.Text = s

数组元素从a(1) 到a(6)的数据依次为“31、70、25、53、82、93”,经过

该程序“加工”后,文本框Text1中显示的是()

A. 25 31 53

B.25 31 53 70 82 93

C.93 82 70

D.93 82 70 53 31 25

7-2、有如下程序段:

s = “”

For i = 1 To 3

For j = 1 To n-i

If a( j ) > a( j+1 ) Then

k = a( j ) : a( j ) = a(j+1 ) : a(j+1 ) = k End If

Next j

s=s + str ( a( i ) )

Next i

Text1.Text = s

数组元素从a(1) 到a(6)的数据依次为“31、70、25、53、82、93”,经过该程序“加工”后,文本框Text1中显示的是()

A. 25 31 53

B.25 31 53 70 82 93

C.31 31 53

D.93 82 70 53 31 25

9、小明对如下7个数进行升序(由小到大)的排序,设计界面如下:

部分代码实现如下:

Dim a(1 to 7 ) as integer

Dim i, j,t as integer

List2.clear ‘清空列表框

For i=1 to ___①____ ,做几趟加工

For j=7 to _____②_______ step -1

If ________③____________ then

t=a(j):a(j)=a(j-1): a(j-1)=t

__________④_________

Next j

Next i

‘列表框2中显示排序后的数据

For i=1 to 7

List2.additem str(a(i))

Next i

①中代码为________________ ②中代码为______________________

③中代码为_____________________ _④中代码为______________________

相关文档
最新文档