
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
LeetCode——211. 添加与搜索单词 - 数据结构设计[Design Add and Search Words Data Structure][中等]——分析及代码[C++]一、题目二、分析及代码1. 字典树(1)思路(2)代码(3)结果三、其他一、题目请你设计一个数据结构,支持 添加新单词 和 查找字符串是否与任何先前添加的字符串匹配 。实现词典类 WordDictionary :Wor
LeetCode——138. 复制带随机指针的链表[Copy List with Random Pointer][中等]——分析及代码[Java]一、题目二、分析及代码1. 递归 + 哈希表(1)思路(2)代码(3)结果2. 节点拆分(1)思路(2)代码(3)结果三、其他一、题目给你一个长度为 n 的链表,每个节点包含一个额外增加的随机指针 random ,该指针可以指向链表中的任何节点或空节点。
LeetCode——1579. 保证图可完全遍历[Remove Max Number of Edges to Keep Graph Fully Traversable]——分析及代码[Java]一、题目二、分析及代码1. 并查集(1)思路(2)代码(3)结果三、其他一、题目Alice 和 Bob 共有一个无向图,其中包含 n 个节点和 3种类型的边:类型 1:只能由 Alice 遍历。类型 2:只
## 1. 双向队列### (1)思路设计一个升序排列的双向队列,即 front 为最小值,back 为最大值,每次遇到新元素时:1)队列头部小于新元素的部分,均符合 值 < 新元素 且 下标 < 新元素,依次全部 pop;2)队列尾部下标超出当前窗口范围的,依次 pop;3)从头部插入新元素;4)返回队列尾部的元素,即为滑动窗口的最大值。在此基础上,双向队列中可用下标替代元素值,简化实现过程。#
LeetCode—160.相交链表[Intersection of Two Linked Lists]——分析及代码[C++]一、题目二、分析及代码1. 双指针法(1)思路(2)代码(3)结果2. 哈希表(1)思路(2)代码(3)结果三、其他一、题目编写一个程序,找到两个单链表相交的起始节点。如下面的两个链表:在这里插入图片描述在节点 c1 开始相交。示例 1:在这里插入图片描述输入:inters
LeetCode—124.二叉树中的最大路径和[Binary Tree Maximum Path Sum]——分析及代码[C++]一、题目二、分析及代码1. 迭代(1)思路(2)代码(3)结果三、其他一、题目给定一个非空二叉树,返回其最大路径和。本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径至少包含一个节点,且不一定经过根节点。示例 1:输入: [1,2,3]1/ \23输
LeetCode—142.环形链表 II[Linked List Cycle II]——分析及代码[C++]一、题目二、分析及代码1. 双指针(1)思路(2)代码(3)结果三、其他一、题目给定一个链表,返回链表开始入环的第一个节点。 如果链表无环,则返回 null。为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表
LeetCode—10.正则表达式匹配[Regular Expression Matching]——分析及代码[C++]一、题目二、分析及代码1. 从后向前递归(1)思路(2)代码(3)结果2. 动态规划(1)思路(2)代码(3)结果三、其他1.长度为变量的数组一、题目给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。'.' 匹配任意单个字符...







