单选题

小明为了学习选择排序的算法,编写了下面的代码。针对代码中红色文字所示

的一、二、三处,下面说法正确的是?(?)

a = [8,4,11,3,9]

count = len(a)

for i in range(count-1):

  mi = i

  for j in range(i+1,count):

    if a[mi] > a[j]:#代码一

       mi = j #代码二

  if i!=mi:

    a[mi],a[i] = a[i],a[mi] #代码三

print(a)

A

如果找到更大的元素,则记录它的索引号。

B

如果找到更小的元素,则记录它的索引号。

C

在一趟选择排序后,不管是否找到更小的元素,mi所在元素都得与i所在的元素发生交换。

D

代码三所在的行必然要运行。

赣ICP备20007335号-2