利用选择排序(边比较边交换)算法对一个大小为N的一维数组进行排序,外循环需要()次操作。
A.3
B.N-1
C.N
D.2N
A.3
B.N-1
C.N
D.2N
A.A.冒泡排序算法的时间复杂性为 O(n*n)。
B.B.冒泡排序每一遍都选出最小的数,因此属于选择类排序。
C.C.冒泡排序属于标准交换分类。
D.D.冒泡排序在最好情况下可以不进行任何交换。E在最坏情况下,算法需要进行 n遍比较和交换操作。
下列内部排序算法中,其比较次数(交换次数)与序列初态无关的算法是()。
A.快速排序
B.直接插入排序
C.二路归并排序
D.冒泡排序
A.排序只能对数字进行。
B.冒泡排序属于选择排序。
C.所有的排序类算法,其效率与对象的原始状态无关。
D.折半查找只能在有序数据序列中进行。E查找类算法的元操作是比较。
经全部有序,则起泡排序过程中需进行(②)次元素值的比较,(③)次元素值的交换。如果待排序元素序列的初始排列完全逆序,则起泡排序过程中需进行(④)次元素值的比较,(⑤)次元素的交换。(1)供选择的答案:A、插入排序;B、选择排序;C、交换排序;D、分配排序;E、归并排序.
下面是求无向连通图的最小生成树的一种算法:
//设图中总顶点数为n,总边数为m
将图中所有的边按其权值从大到小排序为;
若图不再连通,则恢复e1;(m=m+1);I=i+1;
(1)试间这个算法是否正确,并说明原因。
(2)以图8-44所示的图为例,写出执行以上算法的过程。
中值相对较小的数据会像水中的气泡一样逐渐上升到数组的最顶端,与此同时,较大的数据逐渐地下沉到数组的底部。这个处理过程需要在整个数组范围内反复执行多遍。每一遍执行时,比较相邻的两个元素,若顺序不对,则将其位置交换,当没有数据需要交换时, 数据也就排好序了。编程将排序函数DataSort() 改用冒泡法实现。
若表R在排序前已按键值递增顺序排列,则比较次数最少的算法是()。
A.直接插入排序
B.快速排序
C.归并排序
D.选择排序
自由树(即无环连通图)T=(V,E)的直径是树中所有点对间最短路径长度的最大值,即T的直径定义为MAX D(u,v),这里D(u,v)(u,v∈V)表示顶点u到顶点v的最短路径长度(路径长度为路径中所包含的边数)。写一算法求自由树T的直径,并分析算法的时间复杂度。