题目内容
(请给出正确答案)
[单选题]
设一个有序的单链表中有n个结点,现要求插入一个新结点后使得单链表仍然保持有序,则该操作的时间复杂度为()
A.O(log2n)
B.O(1)
C.O(n2)
D.O(n)
查看答案
如果结果不匹配,请 联系老师 获取答案
A.O(log2n)
B.O(1)
C.O(n2)
D.O(n)
设单链表中结点的结构为:
已知单链表中结点*q是结点*p的直接前驱,若在*q与*p之间插人结点*s,
则应执行以下()操作。
A、s->link-p-link;p->link-s;
B、q->link=s;s->link-p:
C、p->link-s->link;s~>link=p;
D、p->link=s;s->link=q;
(1)编写一个算法,从任一给定的位置(pr,p)开始,将指针p右移k个结点。如果p移出链表,则将p为0,并让pr停留在链表最右边的结点上。
(2)编写一个算法,从任一给定的位置(pr,p)开始,将指针p左移k个结点。如果p移出链表,则将p置为0,并让pr停留在链表最左边的结点上。
已知两个链表head1 和head2 各自有序,请把
它们合并成一个链表依然有序。(保留所有结点,即
便大小相同)