对n个元素进行冒泡排序,要求按升序排列,程序中设定某一趟冒泡没有出现元素交换,就结束排序过程。对某n个元素的排序共进行了

题目
单选题
对n个元素进行冒泡排序,要求按升序排列,程序中设定某一趟冒泡没有出现元素交换,就结束排序过程。对某n个元素的排序共进行了3n-6次元素间的比较就完成了排序,则()。
A

原序列是升序排列

B

原序列是降序排列

C

对序列只进行了2趟冒泡

D

对序列只进行了3趟冒泡

参考答案和解析
正确答案: B
解析: 暂无解析
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

对n个元素进行冒泡排序,通常要进行n-1趟冒泡,在第j趟冒泡中共要进行()次元素间的比较。

Aj

Bj-1

Cn-j

Dn-j-1


C

第2题:

以下冒泡法程序对存放在a[1],a[2],……,a[n]中的序列进行冒泡排序完成程序中的空格部分,其中n是元素个数,要求按升序排列。
(1)j<=n-1
(2)i<=n-j
(3)a[i]=a[i+1]
(4)a[i+1]=temp
(5)当某趟冒泡中没有出现交换则已排好序结束循环。

第3题:

n个元素进行冒泡法排序,通常需要进行________趟冒泡,第j趟冒泡要进行______次元素间的比较。


参考答案:n-1,n-j

第4题:

20个元素进行冒泡法排序,通常需要进行19趟冒泡,其中第10趟冒泡共需要进行()次元素间的比较。


正确答案:10

第5题:

对于n个元素构成的降序顺序线性表,采用冒泡排序按照关键字升序排列时共需进行()趟排序。


正确答案:n-1

第6题:

对n个元素进行冒泡排序若某趟冒泡中只进行了()次元素间的交换,则表明序列已经排好序。

A1

B2

C0

Dn-1


C

第7题:

以下冒泡法程序对存放在a[1],a[2],……,a[n]中的序列进行冒泡排序,完成程序中的空格部分,其中n是元素个数,程序按升序排列。
(1)j<=n-1
(2)i<=n-j
(3)a[i]=a[i+1]
(4)a[i+1]=temp
(5)当某趟冒泡中没有出现交换则已排好序,结束循环

第8题:

有n个记录存储在带头结点的双向链表中,现用双向冒泡排序法对其按上升序进行排序,请写出这种排序的算法。(注:双向冒泡排序即相邻两趟排序向相反方向冒泡)。


参考答案:
  [算法描述]:
  typedef struct node
  { ElemType data;
  struct node *prior,*next;
  }node,*DLinkedList;
  void TwoWayBubbleSort(DLinkedList la)
  //对存储在带头结点的双向链表la中的元素进行双向起泡排序。
  {int exchange=1; // 设标记
  DLinkedList p,temp,tail;
  head=la //双向链表头,算法过程中是向下起泡的开始结点
  tail=null; //双向链表尾,算法过程中是向上起泡的开始结点
  while (exchange)
  {p=head->next; //p是工作指针,指向当前结点
  exchange=0; //假定本趟无交换
  while (p->next!=tail) // 向下(右)起泡,一趟有一最大元素沉底
  if (p->data>p->next->data) //交换两结点指针,涉及6条链
  {temp=p->next; exchange=1;//有交换
  p->next=temp->next;temp->next->prior=p //先将结点从链表上摘下
  temp->next=p; p->prior->next=temp; //将temp插到p结点前
  temp->prior=p->prior; p->prior=temp;
  }
  else p=p->next; //无交换,指针后移
  tail=p; //准备向上起泡
  p=tail->prior;
  while (exchange && p->prior!=head)
  //向上(左)起泡,一趟有一最小元素冒出
  if (p->dataprior->data) //交换两结点指针,涉及6条链
  {temp=p->prior; exchange=1; //有交换
  p->prior=temp->prior;temp->prior->next=p;
  //先将temp结点从链表上摘下
  temp->prior=p; p->next->prior=temp; //将temp插到p结点后(右)
  temp->next=p->next; p->next=temp;
  }
  else p=p->prior; //无交换,指针前移
  head=p; //准备向下起泡
  }// while (exchange)
  } //算法结束

第9题:

n个元素进行冒泡法排序,第j趟冒泡要进行()次元素间的比较。


正确答案:n-j

第10题:

n个元素进行冒泡法排序,通常需要进行()趟冒泡。


正确答案:n-1