| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 数据结构与算法 -> 链表经典 10题 -> 正文阅读 |
|
[数据结构与算法]链表经典 10题 |
文章目录LinKedList与链表 (2)
这里我们的 移除 链表元素,再上文的删除操作已经完成之类就不再继续了。 下面我们就来开始本文的学习 ? 1.反转链表? 翻转链表可以说是非常经典的 题目了, 想必学习了链表的都会遇见这一题,那么我们就来完成这一题 ? ? ? ? ? 2.链表的中间结点? ? ? ? ? ? ? ? 其实 这里个题目还有一种思路 就是 ,求一遍链表长度,然后 让show 走 长度的一半也能找到我们的中间节点,但是这个写法不推荐,求长度遍历一次,走的时候又会遍历一次。 这道题我们就完成了, 下面继续 ? 3.链表中倒数第k个结点_? 在这里插入图片描述 ? 我想肯定有很多同学能想到这种方法,但是我们需要遍历链表两次 那么我们 能不能只遍历链表一次就找到我们的节点呢 ? 这里就可以看思路二 , 上面这个方法 可以自己尝试实现一下。 ? ? ? ? ? 最后注意一下判断 k 是否大于 链表长度的条件就需要思考一下。 ? 4.合并两个有序链表? 看到这道题, 如果是我们写过两个有序数组合并成一个有序的数组,那么这道题就非常简单了。 一个思路 就是遍历 ,然后比较 找出两个之间的最小值然后赋值到新的链表上即可 ? ? ? ? 5.链表分割? ? ? ?
这道题就过了,下面我们继续 ? 6.链表的回文结构? ? ? 代码实现 :
? 7.相交链表? ? ?
? ? 8.环形链表? ? ? ? 9.环形链表 II? ? ? 这里链表的 10道经典题目就完成了, 下面我们就可以来学习一下双向链表 下文预告 双向链表的实现 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/25 19:23:57- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |