- 数据结构的辅导书上答案是两个都是O(1).
- 我觉得循环单链表要找到最后一个结点,把最后一个指针指向新的开始结点,所以,时间复杂度应该是O(n)。 是不是我哪里想错了呢?
关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率

已采纳
带头结点的循环/非循环单链表删除开始结点的时间复杂度
收起
- 写回答
- 好问题 1 提建议
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
3条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
ZEKEGU1997 2019-07-22 15:52关注带头结点的循环单链表是尾结点是指向头结点的,删除开始结点不影响,所以不需要遍历,时间复杂度为O(1)
不带头结点的循环单链表尾结点是指向开始结点的,这时候需要遍历,为O(n)本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 2无用举报微信扫一扫
点击复制链接分享
编辑预览轻敲空格完成输入- 显示为
- 卡片
- 标题
- 链接
评论按下Enter换行,Ctrl+Enter发表内容
编辑
预览

轻敲空格完成输入
- 显示为
- 卡片
- 标题
- 链接
报告相同问题?
提交
- 2022-01-27 08:07嵩怡儿的博客 方法一:利用头插法实现链表的逆置 算法思想 1)定义两个LNode* 指针p 和r LNode* p: 用于遍历整个单链表 LNode* r:指向p的后继结点防止断链 2)将p标记第一个结点,r标记p所指结点后继 3)依次将后续结点头插法插入...
- 2024-03-28 02:37本教程将详细讲解如何在C语言中实现一个不带头结点的单链表,包括链表的基本操作如创建、插入、删除、遍历等。 首先,我们需要定义链表节点的结构体。在C语言中,结构体是一种自定义的数据类型,可以用来封装多种...
- 2016-11-01 13:22BUS375的博客 一个指针指向此单链表中间的一个节点(既不是第一个,也不是最后一个节点),请将该节点从单链表中删除。 p->data = p->next->data; p->next = p->next->next; firee(p->next); 链表结点定义如下: struct ...
- 2023-03-12 13:26小黄鸭丫丫丫的博客 递归实现不带头结点的单链表逆置
- 2017-05-30 06:30### 可视化的带头结点的单链表构造 #### 实验目的与要求 本次实验旨在让学生通过实际操作,深入理解并掌握单链表的基本概念及其构造方法。实验要求学生根据线性表的抽象数据类型定义,实现带有头结点的单链表,并...
- 2024-08-03 11:09HEX9CF的博客 设有一个表头指针为L的无头结点的非空单链表。设计一个算法,将链表中所有结点的链接方向逆转,即要求仅利用原表的存储空间(也就是说,算法的空间复杂度为O(1))。
- 2022-11-08 11:06情话0.0的博客 对于插入、删除操作得从头遍历,尤其是在链表尾部,还有一点就是无法一步的访问到某个节点的前驱节点,也就是说访问前驱节点的时间复杂度为O(n)。为了避免这样的缺点,便引出了双向循环链表首先,它是一个链表,通过...
- 2021-07-01 09:37yunfan188的博客 在链表结构中,每一个数据元素都存放在链表的一个结点(Node)中,而每个结点之间是由指针将其连接在一起,这样就形成了一条如同“链子”的结构。 1.1 链表结点(node) 结点 = 数据域 + 指针域 数据域用来存放...
- 2020-07-22 16:34饼瑶的博客 typedef是在计算机编程语言中用来为复杂的声明定义简单的别名,它与宏定义有些差异。它本身是一种存储类的关键字,与auto、static、register等关键字不能出现在同一个表达式中。 通常讲,typedef要比#define要好,...
- 2021-05-22 00:10世界上最后一只猫的博客 用单向循环链表解决约瑟夫问题算法优劣性分析用单向循环链表解决约瑟夫问题算法优劣性分析摘要: 首先由简单问题引入约瑟夫问题,然后用单向...时间复杂度中图分类号:TP3文献标识码:A文章编号:1671-7597(2011)01...
- 2018-06-30 03:15程序员里打球最厉害的的博客 若p所指结点的值为x,则删除,并让p指向下个结点,否则让pre和p指针同步后移一个结点。解法二: 采用尾插法建立单链表,用p指针扫描L的所有结点,当其值不为x时将其链接到L之后,否则将其释放。我个人的解法更偏向...
- 2021-09-27 01:49劲夫学编程的博客 并且由于单链表是无法从后往前找的,如果你想进行尾删这样的操作,你必须从第一个节点往后找,你的时间复杂度一定是O(n)。为了解决上面的一些缺陷,我们今天来介绍带头双向循环链表 提示:以下是本篇文章正文内容
- 2023-11-11 06:59很楠不爱的博客 单链表想尾插,首先要进行循环找尾,时间复杂度就高了,但是双链表就好办,因为哨兵位的前一个节点就是尾,也就是phead->prev,尾找到之后,就好办了: //尾插 void DLinkListPushBack(DLLNode* phead, DLLDataType...
- 2019-03-21 16:07阳光丿洒脱的博客 首先我们要想,一个结点里面要有什么? 一个是数据域,第二个是指针域,指向下一个结点,所以我们用一个结构体来包括一个结点所需要的这些内容。 这是链表中的一个结点的内容 SListDataType这个类型,是用户...
- 2018-12-15 04:40羌芜的博客 = NULL)//循环判断,对应步骤3 { t=t->next;//t后移,对应步骤4 p->next=head->next;// head->next=p;//头插法将p插入haed表,对应步骤5 p=t;//处理下一个,对应步骤6 } return;//结束函数,对应...
- 2023-06-10 05:25☞黑心萝卜三条杠☜的博客 本文主要介绍了三种不同的队列实现方式,包括带头结点单向队列、不带头结点单向队列和循环队列。这些队列实现方式分别使用了链表、数组等不同的数据结构,在实现细节、时间复杂度和空间利用率等方面具有不同的特点。
- 2022-08-08 04:45野猪佩奇`的博客 带头双向循环链表的实现以及链表、顺序表优缺点的总结。
- 2021-05-21 08:20技术革新者的博客 紧凑结构和非紧凑结构 C.线性结构和非线性结构 D.内部结构和外部结构 2.数据结构在计算机内存中的表示是指 A 。 A.数据的存储结构 B.数据结构 C.数据的逻辑结构 D.数据元素之间的关系 3.在数据结构中,与...
- 没有解决我的问题, 去提问
联系我们(工作时间:8:30-22:00)
400-660-0108kefu@csdn.net在线客服
- 京ICP备19004658号
- 经营性网站备案信息
公安备案号11010502030143
- 营业执照
- 北京互联网违法和不良信息举报中心
- 家长监护
- 中国互联网举报中心
- 网络110报警服务
- Chrome商店下载
- 账号管理规范
- 版权与免责声明
- 版权申诉
- 出版物许可证
- ©1999-2025北京创新乐知网络技术有限公司