吕芳SG
吕芳SG
全部文章
分类
题解(11)
归档
标签
去牛客网
登录
/
注册
吕芳SG的博客
全部文章
(共11篇)
题解 | #下一个排列#
整数数组的一个排列 就是将其所有成员以序列或线性顺序排列。 给你一个整数数组 nums ,找出 nums 的下一个排列。必须原地修改,只允许使用额外常数空间。 下一个排列 按照字典序的下一个更大的排列;若已经是最大值,下一个排列为最小序号 问题分析:元素按升序排列的下一个元素 举例:输入[1,2,...
Python3
双指针
数组
2022-01-30
1
492
题解 | #合并两个有序的数组#
给出一个有序的整数数组 A 和有序的整数数组 B ,请将数组 B 合并到数组 A 中,变成一个有序的升序数组。 题目理解:有序数组、空间足够,合并 解题工具: 双指针, firTail, secTail 循环遍历 两层循环 外层判断B,结束条件:B全部加到A中 while secTa...
Python3
双指针
数组
2022-01-28
0
320
题解 | #单链表的排序#
给你链表的头结点 head ,请将其按升序排列并返回排序后的链表 。 解题思路:链表、归并排序、子问题 解题工具: 递归逻辑,求解子问题 链表等分算法 链表合并算法 2.递归处理过程,实现链表切分和有序表合并 终止条件和返回值 #其一:单个节点为切分终点,返回长度为一的链表 while ...
Python3
链表
递归
双指针
归并排序
2022-01-28
0
364
题解 | #两个链表生成相加链表#
给你两个 非空 链表来代表两个非负整数。数字最高位位于链表开始位置。它们的每个节点只存储一位数字。将这两数相加会返回一个新的链表。 解题思路:链表加法,高位在开始位置;生成新链表 解题工具 栈 虚拟头节点 倒插法构建链表 按位相加算法 链表倒序存储,使用栈结构 stack = [] ...
Python3
单调栈
链表
2022-01-28
0
417
题解 | #删除链表中重复的结点#
给定一个已排序的链表的头 head , 删除原始链表中所有重复数字的节点,只留下不同的数字 。返回 已排序的链表 。 题目理解:链表,重复数字,删除节点,只留不同数字,新链表 解题工具: 两指针:记录前一个节点pre、当前节点cur 节点比较:节点值是否相同;节点是否相同 一次顺序遍历 节...
Python3
双指针
链表
2022-01-27
0
383
题解 | #合并k个已排序的链表#
合并 k 个升序的链表并将结果作为一个升序的链表返回其头节点。 题目理解:K个链表、升序链表、合并 【k个】-使用特殊数据结构 解题思路: 链表操作问题: 解题工具:二叉堆(优先级队列) 操作方法:构造一棵二叉最小堆 构造过程: 引入heapq模块,使用封装函数heaphash()...
Python3
链表
树状数组
2022-01-27
1
576
题解 | #链表中环的入口结点#
给一个长度为n链表,若其中包含环,请找出该链表的环的入口结点,否则,返回null。 题目理解:环的入口位置。 fast = 2 倍slow 2(x + y) = x + y + n( y + z) ---> x = (n-1)(y + z) + z 当n=1;x = z 且n只能为1, 当...
Python3
双指针
链表
2022-01-26
0
357
题解 | #判断链表中是否有环#
判断给定的链表中是否有环。如果有环则返回true,否则返回false。 题目理解:判断环、 解题思路: 链表操作问题: 工具:快慢指针 边界检查 环判断 环判断: 2倍速指针会在环内追上一倍速指针 边界检查 链表长度为空 链表长度为1且有环 while(快指针走到尾) whi...
Python3
链表
双指针
2022-01-26
0
378
题解 | #链表中的节点每k个一组翻转#
给你一个链表,每k 个节点一组进行翻转,请你返回翻转后的链表。如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 题目理解:包含子问题、反转、递归 解题思路: 操作工具: 子问题 递归 链表反转子函数 递归策略: 前序递归,位于前部的...
Python3
链表
2022-01-26
0
451
题解 | #合并两个排序的链表#
输入两个递增的链表,单个链表的长度为n,合并这两个链表并使新链表中的节点仍然是递增排序的。 题目理解:单增链表、合并、新链表 输入:pHead1, pHead2 解题思路: 链表操作 操作工具:链表节点指针 操作方法:顺次遍历 合并策略 边界检查 工具:虚拟头节点dummy、新链表尾部...
Python3
链表
2022-01-26
0
405
首页
上一页
1
2
下一页
末页