试题详情
- 简答题在单链表、双链表和单循环表中,若仅知道指针p指向某结点,不知道头指针,能否将结点*p从相应的链表中删去?若可以,其时间复杂度各为多少?
-
1.单链表。当我们知道指针p指向某结点时,能够根据该指针找到其直接后继,但是由于不知道其头指针,所以无法访问到p指针指向的结点的直接前趋。因此无法删去该结点。
2.双链表。由于这样的链表提供双向链接,因此根据已知结点可以查找到其直接前趋和直接后继,从而可以删除该结点。其时间复杂度为O(1)。
3.单循环链表。根据已知结点位置,我们可以直接得到其后相邻的结点位置(直接后继),又因为是循环链表,所以我们可以通过查找,得到p结点的直接前趋。因此可以删去p所指结点。其时间复杂度应为O(n)。 关注下方微信公众号,在线模考后查看
热门试题
- 设哈希表的地址范围为0~17,哈希函数为
- 对广义表来说,下述哪些是正确的()
- 数据结构里,数据类型分为两大类,它们是(
- 设如下图所示的二叉树B的存储结构为二叉链
- 已知一组记录为(46,74,53,14,
- 假定一组记录的排序码为(46,79,56
- 某二叉树结点的中序序列为A、B、C、D、
- 在头指在单链表中,指针p指向元素为x的结
- 折半查找的时间复杂性为()
- 在分块查找中首先查找(),然后再查找相应
- 若输入序列为1,2,3,4,5,6,则通
- 在对一组记录(55,39,97,22,1
- 对关键码序列28,16,32,12,60
- 若已知一个栈的入栈序列是1,2,3,
- 向栈中压入元素的操作是先(),后()。
- 设s和t是表示成单链表的两个串,试编写一
- 在各种查找方法中,平均查找承担与结点个数
- 设F是一个森林,B是由F转换得到的二叉树
- 在一个长度为n的顺序存储线性表中,向第i
- 一棵有n个叶结点的哈夫曼树,则该树共有(