写出下列用快排序对下列序列进行两次划分的过程及结果。

  • A+

答案查询网公众号已于近期上线啦

除基本的文字搜题外,准备上线语音搜题和拍照搜题功能!微信关注公众号【答案查询网】或扫描下方二维码即可体验。

(1)【◆题库问题◆】:[问答题] 写出下列用快排序对下列序列进行两次划分的过程及结果。

【◆参考答案◆】:
18 26 21 13 17 21 【37】 82 69 77 48 39 55 51

(2)【◆题库问题◆】:[问答题] 在单循环链表中设置尾指针比设置头指针好吗?为什么?

【◆参考答案◆】:设尾指针比设头指针好。尾指针是指向终端结点的指针,用它来表示单循环链表可以使得查找链表的开始结点和终端结点都很方便,设一带头结点的单循环链表,其尾指针为rear,则开始结点和终端结点的位置分别是rear->next->next 和 rear, 查找时间都是O(1)。若用头指针来表示该链表,则查找终端结点的时间为O(n)。

(3)【◆题库问题◆】:[单选] 线性表(a1,a2,…,an)以链接方式存储时,访问第i位置元素的时间复杂性为()。
A.O(i)
B.O(1)
C.O(n)
D.O(i-1)

【◆参考答案◆】:C

(4)【◆题库问题◆】:[判断题] 线性表采用链式存储结构时,结点和结点内部的存储空间可以是不连续的
A.正确
B.错误

【◆参考答案◆】:正确

(5)【◆题库问题◆】:[单选] 在双向循环链表中,在p指针所指的结点后插入一个指针q所指向的新结点,修改指针的操作是()。
A.p->next=q;q->prior=p;p->next->prior=q;q->next=q;
B.p->next=q;p->next->prior=q;q->prior=p;q->next=p->next;
C.q->prior=p;q->next=p->next;p->next->prior=q;p->next=q;
D.q->next=p->next;q->prior=p;p->next=q;p->next=q;

【◆参考答案◆】:C

(6)【◆题库问题◆】:[判断题] 二叉树中每个结点有两棵非空子树或有两棵空子树。
A.正确
B.错误

【◆参考答案◆】:正确

(7)【◆题库问题◆】:[判断题] 一般树和二叉树的结点数目都可以为0。
A.正确
B.错误

【◆参考答案◆】:正确

(8)【◆题库问题◆】:[单选] 对待排序的元素序列进行划分,将其分为左、右两个子序列,再对两个子序列施加同样的排序操作,直到子序列为空或只剩一个元素为止。这样的排序方法是()。
A.直接选择排序
B.直接插入排序
C.快速排序
D.起泡排序

【◆参考答案◆】:C

(9)【◆题库问题◆】:[判断题] 在单链表中,要访问某个结点,只要知道该结点的地址即可;因此,单链表是一种随机存取结构。
A.正确
B.错误

【◆参考答案◆】:正确

(10)【◆题库问题◆】:[单选] 在对n个元素进行直接插入排序的过程中,共需要进行()趟。
A.n
B.n+1
C.n-1
D.2

【◆参考答案◆】:C

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: