摘要:
将搜索二叉树转换成双向链表 问题重述: 给与一颗搜索二叉树,将其转换为一个有序的双向链表,并将链表的头返回 例如: 这棵搜索二叉树转换后的双向链表从头到尾依次是1~9。对每一个节点来说,原来的right指针等价于转换后的next 指针,原来的left 指针等价于转换后的last 指针,最后返回转换后 阅读全文
posted @ 2022-02-21 14:22
foldn
阅读(101)
评论(0)
推荐(0)
摘要:
将一个单向链表按照某个值划分为左边小、中间相等、右边大的形式 问题重述: 给定一个单向链表的头节点,节点的类型是整形,在给定一个整数pivot,实现一个调整链表的函数,将链表划分成左边都是小于pivot的结点,中间都是等于的结点,右边都是大于的结点(调整后的结点顺序不做要求) 进阶:左中右的结点顺序 阅读全文
posted @ 2022-02-21 14:22
foldn
阅读(194)
评论(0)
推荐(0)
摘要:
复制带有随机指针节点的链表 问题重述: 给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。 构造这个链表的 深拷贝。 深拷贝应该正好由 n 个 全新 节点组成,其中每个新节点的值都设为其对应的原节点的值。新节点的 next 指针和 阅读全文
posted @ 2022-02-21 14:21
foldn
阅读(60)
评论(0)
推荐(0)
摘要:
将单链表的每K个结点逆序 问题重述:给定一个单链表的头节点,实现一个调整单链表的函数,使得每k个结点之间逆序,如果最后不足k个节点一组则不调整最后几个结点 问题分析: 简单做法,直接使用栈保存那k个结点,然后将这k个结点逆序后连接到链表上去,只需要注意头节点即可。进阶解法直接对链表进行处理,每一次记 阅读全文
posted @ 2022-02-21 14:21
foldn
阅读(103)
评论(0)
推荐(0)
摘要:
部分链表的反转 问题重述: 给你单链表的头指针 head 和两个整数 left 和 right ,其中 left <= right 。请你反转从位置 left 到位置 right 的链表节点,返回 反转后的链表 。 示例 1: 输入:head = [1,2,3,4,5], left = 2, rig 阅读全文
posted @ 2022-02-21 14:20
foldn
阅读(785)
评论(0)
推荐(0)
摘要:
链表的反转 问题重述: 创建两个函数,分别实现反转单向链表和双向链表,给予链表的头节点head,返回反转后的头结点 要求:如果链表的长度为n,时间复杂度要求为o(n),空间复杂度为o(1) 问题分析: 题目要求我们反转,我们可以直接循环链表,然后在循环体中对每一个结点进行反转,需要注意的是,我们不能 阅读全文
posted @ 2022-02-21 14:20
foldn
阅读(125)
评论(0)
推荐(0)