SF
好易学数据结构
好易学数据结构
注册登录
关注博客
注册登录
主页
关于
RSS
可视化图解算法:二叉树的层序遍历
好易学数据结构
4 月 3 日
阅读 3 分钟
321
1. 题目描述给定一个二叉树,返回该二叉树层序遍历的结果,(从左到右,一层一层地遍历)例如:给定的二叉树是{3,9,20,#,#,15,7},该二叉树层序遍历的结果是[[3],[9,20],[15,7]]数据范围:二叉树的节点数满足 1≤n≤10^5^示例1输入: {代码...} 返回值: {代码...} 示例2输入: {代码...} 返回值: {代码...} 2. 解题思路二...
可视化图解算法: 二叉树的后序遍历
好易学数据结构
4 月 1 日
阅读 3 分钟
270
1. 题目描述给定一个二叉树,返回他的后序遍历的序列。后序遍历是值按照 左节点->右节点->根节点 的顺序的遍历。数据范围:二叉树的节点数量满足 0≤n≤100 ,二叉树节点的值满足 1≤val≤100 ,树的各节点的值各不相同样例图:示例1输入: {代码...} 返回值: {代码...} 示例2输入: {代码...} 返回值: {代码...} 2. ...
可视化图解算法: 二叉树的中序遍历
好易学数据结构
3 月 31 日
阅读 3 分钟
319
1. 题目描述给定一个二叉树的根节点root,返回它的中序遍历结果。数据范围:树上节点数满足 0≤n≤1000,树上每个节点的值满足 0 ≤val≤1000进阶:空间复杂度 O(n),时间复杂度 O(n)示例1输入: {代码...} 返回值: {代码...} 示例2输入: {代码...} 返回值: {代码...} 示例3输入: {代码...} 返回值: {代码...} 示例4输...
可视化图解算法: 二叉树的前序遍历
好易学数据结构
3 月 30 日
阅读 3 分钟
280
1. 题目描述给你二叉树的根节点 root ,返回它节点值的 前序 遍历。数据范围:二叉树的节点数量满足 0≤n≤100 ,二叉树节点的值满足1≤val≤100 ,树的各节点的值各不相同。示例 1输入:{1,#,2,3}返回值:[1,2,3]2. 解题思路需要先明确二叉树前序遍历的规则:二叉树的遍历一般使用【递归】的方法。如果要采用递归方法需满足...
可视化图解算法:递归基础
好易学数据结构
3 月 28 日
阅读 2 分钟
325
这时可以这样操作:问前一排的,他是第几排。前一排的不知道自己是第几排,继续向前问。直到第一排,由于他面对着屏幕,知道自己是第一排。之后再给后面的回话:“我是第一排”,后面的知道了前面的,也就知道了自己的(在前面的基础上+1)。之后再给后面的回复。
可视化图解算法:删除有序(排序)链表中重复的元素-II
好易学数据结构
3 月 27 日
阅读 3 分钟
430
给出一个升序排序的链表,删除链表中的所有重复出现的元素,只保留原链表中只出现一次的元素。 例如: 给出的链表为1→2→3→3→4→4→5, 返回1→2→5. 给出的链表为1→1→1→2→3 返回2→3.
可视化图解算法:链表的奇偶重排(排序链表)
好易学数据结构
3 月 25 日
阅读 3 分钟
335
1. 题目描述给定一个单链表,请设定一个函数,将链表的奇数位节点和偶数位节点分别放在一起,重排后输出。 注意是节点的编号而非节点的数值。 数据范围:节点数量满足 0≤n≤10^5^,节点中的值都满足 0≤val≤10000 要求:空间复杂度 O(n),时间复杂度 O(n)示例1输入: {代码...} 返回值: {代码...} 说明: {代码...} 示例2...
可视化图解算法:单链表的排序(排序链表)
好易学数据结构
3 月 24 日
阅读 3 分钟
434
1. 题目描述给定一个节点数为n的无序单链表,对其按升序排序。 数据范围:0<n≤1000000要求:时间复杂度 O(nlogn)示例1输入: {代码...} 返回值: {代码...} 示例2输入: {代码...} 返回值: {代码...} 2. 解题思路链表的排序可以采用【归并排序】来完成。假如待排序的链表如下图所示:归并排序思路图如下:步骤一:分...
可视化图解算法:判断一个链表是否为回文结构(回文链表)
好易学数据结构
3 月 23 日
阅读 3 分钟
309
1. 题目描述给定一个链表,请判断该链表是否为回文结构。 回文是指该字符串正序逆序完全一致。 数据范围: 链表节点数 0≤n≤10^5^,链表中每个节点的值满足 ∣val∣≤10^7^示例1输入: {代码...} 返回值: {代码...} 示例2输入: {代码...} 返回值: {代码...} 说明: {代码...} 示例3输入: {代码...} 返回值: {代码...} ...
可视化图解算法:链表相加( 两数相加)
好易学数据结构
3 月 21 日
阅读 3 分钟
320
例如:链表 1 为 9->3->7,链表 2 为 6->3,最后生成新的结果链表为 1->0->0->0。
可视化图解算法: 两个链表的第一个公共节点
好易学数据结构
3 月 20 日
阅读 8 分钟
307
输入两个无环的单向链表,找出它们的第一个公共结点,如果没有公共节点则返回空。(注意因为传入数据是链表,所以错误测试数据的提示是用其他方式显示的,保证传入数据是正确的)
可视化图解算法:删除链表中倒数第n个节点
好易学数据结构
3 月 19 日
阅读 7 分钟
407
1. 题目描述给定一个链表,删除链表的倒数第 n 个节点并返回链表的头指针例如,给出的链表为: 1→2→3→4→5, n= 2.删除了链表的倒数第 n 个节点之后,链表变为1→2→3→5.数据范围: 链表长度 0≤n≤1000,链表中任意节点的值满足 0≤val≤100要求:空间复杂度 O(1),时间复杂度 O(n)备注:题目保证 n 一定是有效的示例1输入: {代...
可视化图解算法:链表中倒数(最后)k个结点
好易学数据结构
3 月 18 日
阅读 7 分钟
305
1. 题目描述输入一个长度为 n 的链表,设链表中的元素的值为a~i~ ,返回该链表中倒数第k个节点。如果该链表长度小于k,请返回一个长度为 0 的链表。数据范围:0≤n≤10^5^,0 ≤a~i~≤10^9^,0 ≤k≤10^9^要求:空间复杂度 O(n),时间复杂度 O(n)进阶:空间复杂度 O(1),时间复杂度 O(n)例如输入{1,2,3,4,5},2时,对应的链表结...
可视化图解算法:链表中环的入口节点(环形链表 II)
好易学数据结构
3 月 17 日
阅读 8 分钟
441
1. 题目描述给一个长度为n链表,若其中包含环,请找出该链表的环的入口结点,否则,返回null。数据范围:n≤10000,1<=结点值<=10000要求:空间复杂度 O(1),时间复杂度 O(n)例如,输入{1,2},{3,4,5}时,对应的环形链表如下图所示:可以看到环的入口结点的结点值为3,所以返回结点值为3的结点。输入描述:输入分为2...
可视化图解算法:判断链表中是否有环(环形链表)
好易学数据结构
3 月 17 日
阅读 7 分钟
320
输入分为两部分,第一部分为链表,第二部分代表是否有环,然后将组成的head头结点传入到函数里面。-1代表无环,其它的数字代表有环,这些参数解释仅仅是为了方便读者自测调试。实际在编程时读入的是链表的头节点。
可视化图解算法:合并k个已排序(升序)的链表
好易学数据结构
3 月 14 日
阅读 9 分钟
357
数据范围:节点总数满足 0≤n≤10^5^,链表个数满足 1≤k≤10^5^ ,每个链表的长度满足 1≤len≤200 ,每个节点的值满足∣val∣<=1000
可视化图解算法:合并两个有序(排序)的链表
好易学数据结构
3 月 13 日
阅读 8 分钟
446
输入两个递增的链表,单个链表的长度为n,合并这两个链表并使新链表中的节点仍然是递增排序的。数据范围:10000≤n≤1000,−1000≤节点值≤1000要求:空间复杂度 O(1),时间复杂度 O(n)如输入{1,3,5},{2,4,6}时,合并后的链表为{1,2,3,4,5,6},所以对应的输出为{1,2,3,4,5,6},转换过程如下图所示:
可视化图解算法:链表中的节点每k个一组翻转(反转)
好易学数据结构
3 月 12 日
阅读 9 分钟
351
将给出的链表中的节点每 k 个一组翻转,返回翻转后的链表。如果链表中的节点数不是 k 的倍数,将最后剩下的节点保持原样。你不能更改节点中的值,只能更改节点本身。
可视化图解算法:链表指定区间反转
好易学数据结构
3 月 11 日
阅读 8 分钟
361
给你单链表的头指针 head 和两个整数 left 和 right ,其中 left <= right 。请你反转从位置 left 到位置 right 的链表节点,返回 反转后的链表 。
可视化图解算法:反转链表
好易学数据结构
3 月 11 日
阅读 6 分钟
332
1. 题目描述给定一个单链表的头结点pHead(该头节点是有值的,比如在下图,它的val是1),长度为n,反转该链表后,返回新链表的表头。数据范围: 0<≤n≤1000要求:空间复杂度 O(1) ,时间复杂度 O(n)。如当输入链表{1,2,3}时,经反转后,原链表变为{3,2,1},所以对应的输出为{3,2,1}。以上转换过程如下图所示:示例1输入...
可视化+图解:轻松搞定链表
好易学数据结构
3 月 8 日
阅读 4 分钟
385
链表(Linked list)是一种常用的数据结构,它由一系列节点组成,每个节点包含数据域和指针域。指针域存储了下一个节点的地址,从而建立起各节点之间的线性关系。