leetcode节点hot 100

【DP】LeetCode 剑指 Offer 46. 把数字翻译成字符串

题目链接 剑指 Offer 46. 把数字翻译成字符串 思路 这个问题与 dp 中的经典问题“跳台阶”问题十分类似,在跳台阶问题中我们是选择跳一个台阶或者两个台阶,而在这个问题中我们是选择再统计一个字符还是再统计两个字符。所以他们的状态转移方程都包含 $dp[i]=dp[i-1]+dp[i-2]$。 ......
字符串 字符 LeetCode 数字 Offer

快慢指针-leetcode141-判断链表中是否有环。

LeetCode #141 题目描述: 给定一个链表,判断链表中是否有环。 如果链表中存在环,则返回 true 。 否则,返回 false 。 进阶:你能用 O(1)(即,常量)内存解决此问题吗? 示例 1: example1 输入:head = [3,2,0,-4], pos = 1 输出:tru ......
快慢 指针 leetcode 141

两个链表的第一个公共节点

public class Solution { public ListNode getIntersectionNode(ListNode headA, ListNode headB) { ListNode p1 = headA, p2 = headB; while(p1 != p2){ p1 = p ......
节点 两个

二叉树中是否存在节点和为指定值的路径

递归 class Solution { public boolean hasPathSum(TreeNode root, int sum) { if (root == null) { return false; } if (root.left == null && root.right == nul ......
节点 路径

删除重复节点

在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表 1->2->3->3->4->4->5 处理后为 1->2->5 数据范围:链表长度满足 0≤n≤1000,链表中的值满足 1≤val≤1000 进阶:空间复杂度 O(n),时间复杂度 O( ......
节点

删除倒数第n个节点

class Solution { public ListNode removeNthFromEnd(ListNode head, int n) { ListNode pre = new ListNode(0); pre.next = head; ListNode start = pre, end = ......
节点

每k个节点反转链表

给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。 k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。 你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。 示例 1: 输入:head = [1,2 ......
节点

Mysql 查询指定节点的所有子节点

原文链接:https://www.zhoubotong.site/post/92.html 通常我们直接通过递归查询来达到实现子节点数据获取的需求,这里不谈存储过程的实现,存储过程普通账号有权限限制,通常也不易于开发者维护,这里介绍下纯mysql递归实现的方式:测试数据可以通过之前的一篇文章来模拟。 ......
节点 Mysql

LeetCode 202 快乐数

LeetCode 202 快乐数 题目跳转链接 具体实现思路如下: 实现一个函数getSum,用来计算一个数各个位上的数字的平方和。具体实现就是对这个数进行除十操作和取余操作,对每个位上的数字平方后累加到总和中。 在一个while循环中,不断调用getSum函数,直到计算出1或者陷入无限循环为止。同 ......
LeetCode 202

Leetcode 349. 两个数组的交集

力扣题目跳转链接 代码随想录 题解 题目要求:给定两个数组 nums1 和 nums2 ,返回 它们的交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。 解法一: unordered_set ......
数组 交集 Leetcode 两个 349

【LeetCode动态规划#05】背包问题的理论分析(基于代码随想录的个人理解,多图)

背包问题 问题描述 背包问题是一系列问题的统称,具体包括:01背包、完全背包、多重背包、分组背包等(仅需掌握前两种,后面的为竞赛级题目) 下面来研究01背包 实际上即使是最经典的01背包,也不会直接出现在题目中,一般是融入到其他的题目背景中再考察 因为是学习原理,所以先跳过最原始的问题模板来学。 0 ......
随想录 随想 背包 LeetCode 理论

LeetCode 142.环形链表II

力扣LeetCode 142.环形链表II 题目跳转链接 解题思路: 代码随想录: 142.环形链表II 从头结点出发一个指针, 从相遇节点 也出发一个指针,这两个指针每次只走一个节点, 那么当这两个指针相遇的时候就是 环形入口的节点。 ......
环形 LeetCode 142

LeetCode 面试题 02.07. 链表相交

面试题 02.07. 链表相交 力扣 题目跳转链接 思路参考:代码随想录 跳转链接 错误代码: class Solution { public: ListNode *getIntersectionNode(ListNode *headA, ListNode *headB) { ListNode* f ......
LeetCode 02 07

LeetCode 1574 删除最短子数组使剩余数组有序

LeetCode | 1574.删除最短子数组使剩余数组有序 给你一个整数数组 arr ,请你删除一个子数组(可以为空),使得 arr 中剩下的元素是 非递减 的。 一个子数组指的是原数组中连续的一个子序列。 请你返回满足题目要求的最短子数组的长度。 示例 1: 输入:arr = [1,2,3,10 ......
数组 LeetCode 1574

LeetCode|1032. 字符流

题目链接:1032. 字符流 设计一个算法:接收一个字符流,并检查这些字符的后缀是否是字符串数组 words 中的一个字符串。 例如,words = ["abc", "xyz"] 且字符流中逐个依次加入 4 个字符 'a'、'x'、'y' 和 'z' ,你所设计的算法应当可以检测到 "axyz" 的 ......
字符 LeetCode 1032

LeetCode|1574. 删除最短的子数组使剩余数组有序

题目链接:1574. 删除最短的子数组使剩余数组有序 给你一个整数数组 arr ,请你删除一个子数组(可以为空),使得 arr 中剩下的元素是 非递减 的。 一个子数组指的是原数组中连续的一个子序列。 请你返回满足题目要求的最短子数组的长度。 示例 1: 输入:arr = [1,2,3,10,4,2 ......
数组 LeetCode 1574

Hi3798Mv100 U 盘卡刷教程(全新刷&&升级刷)

1.刷机准备a. 准备一个 U 盘,建议 1G-64G 之内的U盘下载专用格式化软件,对 U 盘进行格式化 : USB_format.exeb. 根据海思芯片机顶盒专有 REG 名称下载对应你机顶盒型号的卡刷固件, 如何确认 REG 名称hi3798mv100:mv100-mdmo1a-usb-fl ......
amp 全新 教程 3798 100

leetcode1574

双指针法,结果只能从最左边或者最右边或者最左边加上最右边中取 class Solution { public: int findLengthOfShortestSubarray(vector<int>& arr) { int n = arr.size(),res = 1,res2 = 1,res3 ......
leetcode 1574

Leetcode 22. 括号生成

题目链接在这里: 还是比较经典的括号匹配问题,这题学习了函数内套子函数的写法,但是关于全局变量还是有一点问题要问问龙哥,先挖个坑放这…… from ast import List # class Solution: # def generateParenthesis(self, n: int) -> ......
括号 Leetcode 22

Leetcode 18. 四数之和(双指针)

题目链接在这里:四数之和 这道题和前面的三数之和一模一样,只是需要枚举前两个数而已,需要注意一下前两个数的重复点的判断,并且不要忘记排序。 from ast import List class Solution: def fourSum(self, nums: List, target: int): ......
之和 指针 Leetcode 18

[LeetCode] 2316. Count Unreachable Pairs of Nodes in an Undirected Graph

You are given an integer n. There is an undirected graph with n nodes, numbered from 0 to n - 1. You are given a 2D integer array edges where edges[i] ......
Unreachable Undirected LeetCode Count Graph

LeetCode 19 删除链表的倒数第N个节点

LeetCode 19 删除链表的倒数第N个节点 题目跳转链接 class Solution { public: ListNode* removeNthFromEnd(ListNode* head, int n) { ListNode* dummyHead=new ListNode(0); dumm ......
节点 LeetCode 19

LeetCode 24. 两两交换链表中的节点

24. 两两交换链表中的节点 力扣题目跳转链接 具体解题思路和答案可以参考:代码随想录: 24. 两两交换链表中的节点 ####自我错误思考过程记录: &#10008 错误代码: //思路: class Solution { public: ListNode* swapPairs(ListNode* ......
节点 LeetCode 24

【LeetCode动态规划#04】不同的二叉搜索树(找规律,有点像智力题)

不同的二叉搜索树 力扣题目链接(opens new window) 给定一个整数 n,求以 1 ... n 为节点组成的二叉搜索树有多少种? 示例: 思路 题意分析 先找一下关系 当n = 1时,如果元素就是1,以1为头节点 1 当n = 2时,分别以1和2为头节点 1 2 / \ 2 1 然后当n ......
智力 LeetCode 规律 动态 04

24. 两两交换链表中的节点——学习笔记

###题目:给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题(即,只能进行节点交换)。 示例 1: 输入:head = [1,2,3,4] 输出:[2,1,4,3] 示例 2: 输入:head = [] 输出:[] 示例 3: 输入:head ......
节点 笔记 24

19.删除链表的倒数第N个节点——学习笔记

###题目:给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点 示例 1: 输入:head = [1,2,3,4,5], n = 2 输出:[1,2,3,5] 示例 2: 输入:head = [1], n = 1 输出:[] 示例 3: 输入:head = [1,2], n = 1 输 ......
节点 笔记 19

LeetCode 59. 螺旋矩阵 II

这道题可以采用模拟法来实现。我们可以设置上下左右四个边界,然后模拟螺旋填充元素。具体来说,我们定义 left、right、top、bottom 四个变量代表当前需要填充的最左边、最右边、最上面、最下面的位置,然后根据当前位置,依次填充矩阵。 具体可以按照以下步骤实现: 初始化矩阵 matrix,并且 ......
矩阵 螺旋 LeetCode 59 II

二叉搜索树中两个节点之和

题目描述 给定一个二叉搜索树的 根节点 root 和一个整数 k , 请判断该二叉搜索树中是否存在两个节点它们的值之和等于 k 。假设二叉搜索树中节点的值均唯一。参考leetcode 分析 中序遍历二叉树,将节点的 value 保存到 ArrayList 中,ArrayList 中元素是有序的。 采 ......
之和 节点 两个

Leetcode 17.电话号码的字母组合 (模拟)

题目链接在这里:电话号码的字母组合 这道题主要学习的是哈希表的应用:可以用大括号来代表建立哈希表,以及子函数的实现:可以直接在主函数中定义子函数,将$string$拼成一个整个的长$string:$"".join(list), 注意前面的这个空串是必要的,它代表子串之间直接相连,没有其他的字符。 f ......
电话号码 字母 Leetcode 号码 电话

Leetcode 15 & 16 (双指针)

都是比较经典的双指针问题,我们可以从中总结一些双指针的规律 首先这两题如果en做的话就是 $O(n^{3})$ 的算法,暴力去找。但是我们可以发现这三个值是满足一定约束的,所以考虑使用方法将它降到 $O(n^2)$ 。如果双指针,一个在头,一个在尾,两个向中间夹,根据约束条件合理选择向中间夹的策略, ......
指针 Leetcode amp 15 16