第1题:
若对n个元素进行直接插入排序,则进行第i趟排序过程前,有序表中的元素个数为 ______。
A.1
B.i-1
C.i
D.i+1
第2题:
对n个基本有序的整数进行排序,若采用插入排序算法,则时间和空间复杂度分别为(62);若采用快速排序算法,则时间和空间复杂度分别为(63)。
A.O(n2)和O(n)
B.O(n)和O(n)
C.O(n2)和O(1)
D.O(n)和O(1)
第3题:
已知一个单链表中有3000个结点,每个结点存放一个整数,( )可用于解决这3000个整数的排序问题且不需要对算法作大的变动。
A.直接插入排序方法
B.简单选择排序方法
C.快速排序方法
D.堆排序方法
第4题:
采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i一1
个整数已经排好序,将第i个整数依次和第i.,i-2,…个整数进行比较,找到应该插入
的位置。现采用插入排序算法对6个整数{5 2,4,6,1,3}进行从小到大排序,则需要进行
(31)次整数之间的比较。对于该排序算法,输入数据具有(32)特点时,对整数进
行从小到大排序,所需的比较次数最多。
A.9
B.10
C.12
D.13
(32)A.从小到大
B.从大到小
C.所有元素相同
D.随机分布
请帮忙给出每个问题的正确答案和分析,谢谢!
第5题:
第6题:
第7题:
第8题:
若对n个元素进行直接插入排序,在进行第i趟排序时,假定元素r[i+1]的插入位置为r[j],则需要移动元素的次数为()。
第9题:
给定线性序集中n个元素和一个整数k,1≤k≤n,要求找出这n个元素中第k小的元素,请设计一个最坏时间复杂度为O(n)的算法,并对其时间复杂度进行分析说明。
第10题:
算法SIB是对指定的整型变量增加或减少一个给定的整数或非整数。
第11题:
1
i-1
i+1
第12题:
j-i
i-j-1
i-j
i-j+1
第13题:
B.插入排序:
思路:当前a[1]..a[i-1]已排好序了,现要插入a[i]使a[1]..a[i]有序。
procedure insert_sort;
var i,j:integer;
begin
for i:=2 to n do begin
a[0]:=a[i];
j:=i-1;
while a[0]<a[j] do begin
a[j+1]:=a[j];
j:=j-1;
end;
a[j+1]:=a[0];
end;
end;{inset_sort}
第14题:
采用插入排序算法对n个整数排序,其基本思想是:在插入第i个整数时,前i-1个整数己经排好序,将第i个整数依次和第i-1, i-2, ...个整数进行比较,找到应该插入的位置。现采用插入排序算法对6个整数{5.2.4.6.1.3}进行从小到大排序,则需要进行(31)次整数之间的比较。对于该排序算法,输入数据具有(32)特点时,对整数进行从小到大排序,所需的比较次数最多。
A.9
B.10
C.12
D.13
第15题:
若对n个元素进行直接插入排序,则进行第i趟排序过程前,有序表中的元素个数为______。
A.1
B.11
C.i
D.i+l
第16题:
第17题:
第18题:
第19题:
若对n个元素进行直接插入排序,在进行第i趟排序时,假定元素r[i+1]的插入位置为r[j],则需要移动的元素的次数为()
第20题:
若对n个元素进行直接插入排序,则进行第i趟排序过程前,有序表中的元素个数为()
第21题:
如果指数i(用于确定第p百分位数的位置)不是整数,则其值应()。
第22题:
若对n个元素进行直接插入排序,则进行第i趟排序时,为寻找插入位置最多需要进行()次元素的比较,假定第0号元素放有待查的关键字。
第23题:
j-i
i-1
i-j-1
i-j+1