序列14,12,15,13,18,16,采用冒泡排序算法(升序)

题目

序列14,12,15,13,18,16,采用冒泡排序算法(升序),经一趟冒泡后,序列的结果是()。

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

在待排序的元素序列基本有序的前提下,效率最高的排序算法是______。

A.冒泡排序

B.选择排序

C.快速排序

D.归并排序


正确答案:A

第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题:

已知序列(15,18,60,41,6,32,83,75,95),请给出采用冒泡法对该序列作升序排序时的每一趟的结果.


正确答案:

结果如下:
初始序列:15  18  60   41    6     32    83  75   95
第一趟:   15  18   41   6     32    60    75  83   95
第二趟:   15  18    6    32   41    60    75  83   95
第三趟:   15    6   18   32   41    60    75  83   95
第四趟:   6   15   18   32    41   60    75  83   95
第五趟:    6   15   18   32    41   60    75  83   95

第4题:

序列12,10,13,11,16,14,采用冒泡排序算法,经一趟冒泡后,序列的结果是()


正确答案:10,12,11,13,14,16

第5题:

序列4 ,2 ,5 ,3 ,8 ,6 ,7,9,采用归并排序算法(升序),经一趟归并后,序列的结果()。


正确答案:2,4,3,5,6,8,7,9

第6题:

采用( )算法对序列{18,12,10,11,23,2,7}进行一趟递增排序后,其元素的排列变为{12,10,11,18,2,7,23}。

A.选择排序 B.快速排序 C.归并排序 D.冒泡排序


正确答案:D

第7题:

排序算法中,从未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较(要求比较次数尽量少),然后将其放入已排序序列的正确位置的方法是()。

A冒泡

B直接插入

C折半插入

D选择排序


C

第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个元素构成的降序顺序线性表,采用冒泡排序按照关键字升序排列时共需进行()趟排序。


正确答案:n-1

第10题:

排序算法中,从尚未排序序列中依次取出元素与已排序序列(初始为空)中的元素进行比较,然后将其放入已排序序列的正确位置的方法是()

  • A、冒泡排序
  • B、直接插入排序
  • C、归并排序
  • D、选择排序

正确答案:B

更多相关问题