leetcod专题

leetcod 685. 冗余连接 II

久违的没做太出来的题目,leetcod 685. 冗余连接 II 题目 在本问题中,有根树指满足以下条件的 有向 图。该树只有一个根节点,所有其他节点都是该根节点的后继。该树除了根节点之外的每一个节点都有且只有一个父节点,而根节点没有父节点。 输入一个有向图,该图由一个有着 n 个节点(节点值不重复,从 1 到 n)的树及一条附加的有向边构成。附加的边包含在 1 到 n 中的两个不同顶点间,

leetcod题:33. 搜索旋转排序数组(中等)

一、题目描述:33. 搜索旋转排序数组(中等) 假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。 搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回 -1 。 你可以假设数组中不存在重复的元素。 你的算法时间复杂度必须是 O(log n) 级别。 示例 1: 输入: n

leetcod题:139. 单词拆分(中等)

一、题目描述:139. 单词拆分(中等) 给定一个非空字符串 s 和一个包含非空单词列表的字典 wordDict,判定 s 是否可以被空格拆分为一个或多个在字典中出现的单词。 说明: 拆分时可以重复使用字典中的单词。 你可以假设字典中没有重复的单词。 示例 1: 输入: s = "leetcode", wordDict = ["leet", "code"] 输出: true 解释: 返回 tr

Leetcod面试经典150题刷题记录 —— 数学篇

Leetcode面试经典150题刷题记录-系列Leetcod面试经典150题刷题记录——数组 / 字符串篇Leetcod面试经典150题刷题记录 —— 双指针篇Leetcod面试经典150题刷题记录 —— 矩阵篇Leetcod面试经典150题刷题记录 —— 滑动窗口篇Leetcod面试经典150题刷题记录 —— 哈希表篇Leetcod面试经典150题刷题记录 —— 区间篇Leetcod面试经典15

Leetcod面试经典150题刷题记录 —— 二叉树层次遍历篇

Leetcod面试经典150题刷题记录-系列Leetcod面试经典150题刷题记录——数组 / 字符串篇Leetcod面试经典150题刷题记录 —— 双指针篇Leetcod面试经典150题刷题记录 —— 矩阵篇Leetcod面试经典150题刷题记录 —— 滑动窗口篇Leetcod面试经典150题刷题记录 —— 哈希表篇Leetcod面试经典150题刷题记录 —— 区间篇Leetcod面试经典150

Leetcod面试经典150题刷题记录 —— 链表篇

Leetcod面试经典150题刷题记录-系列Leetcod面试经典150题刷题记录——数组 / 字符串篇Leetcod面试经典150题刷题记录 —— 双指针篇Leetcod面试经典150题刷题记录 —— 矩阵篇Leetcod面试经典150题刷题记录 —— 滑动窗口篇Leetcod面试经典150题刷题记录 —— 哈希表篇Leetcod面试经典150题刷题记录 —— 区间篇Leetcod面试经典150

Leetcod面试经典150题刷题记录 —— 栈篇

Leetcod面试经典150题刷题记录 —— 栈篇 1. 有效的括号2. 简化路径3. 最小栈4. 逆波兰表达式求值5. 基本计算器 1. 有效的括号 题目链接:有效的括号 - leetcode 题目描述: 给定一个只包括 ( ,),{,},[,] 的字符串 s ,判断字符串是否有效。有效字符串需满足: (1)左括号必须用相同类型的右括号闭合。 (2)左括号必须以正确的顺序闭

Leetcod面试经典150题刷题记录 —— 区间篇

Leetcod面试经典150题刷题记录 —— 区间篇 1. 汇总区间2. 合并区间3. 插入区间4. 用最少数量的箭引爆气球 1. 汇总区间 题目链接:汇总区间 - leetcode 题目描述: 给定一个 无重复元素 的 有序 整数数组 nums 。返回 恰好覆盖数组中所有数字 的 最小有序 区间范围列表 。也就是说,nums 的每个元素都恰好被某个区间范围所覆盖,并且不存在

Leetcod面试经典150题刷题记录 —— 哈希表篇

Leetcod面试经典150题刷题记录 —— 哈希表篇 1. 赎金信2. 同构字符串(按逻辑完整性,分次书写代码)3. 单词规律4. 有效的字母异位词4.1 进阶: 输入字符串包含 unicode 字符 5. 字母异位词分组6. 两数之和7. 快乐数hash集合检测循环隐式链表+快慢指针(弗洛伊德循环查找算法)数学+仿真(待完成) 8. 存在重复元素 II8.1 我的原始解法(遍历数组+遍历

Leetcod面试经典150题刷题记录 —— 矩阵篇

矩阵篇 1. 有效的数独2. 螺旋矩阵Python 3. 旋转图像Python额外开辟数组空间原地置换法 4. 矩阵置零5. 生命游戏Python 1. 有效的数独 题目链接:有效的数独 - leetcode 题目描述: 请你判断一个 9 x 9 的数独是否有效。只需要 根据以下规则 ,验证已经填入的数字是否有效即可。 数字 1-9 在每一行只能出现一次。 数字 1-9

Leetcod面试经典150题刷题记录 —— 滑动窗口篇

滑动窗口篇 1. 长度最小的子数组Python3 2. 无重复字符的最长子串3. 串联所有单词的子串3.1 *(本题前导题)* 找到字符串中所有字母异位词本题 4. 最小覆盖子串官方解法优化解法(我写的不太成功,并未加速) 滑动窗口就像一只蠕动的蚯蚓,头部前进,尾部蓄力,和双指针天生一对。 1. 长度最小的子数组 题目链接:长度最小的子数组 - leetcode 题

leetcod--Reverse Bits

题目描述: everse bits of a given 32 bits unsigned integer. For example, given input 43261596 (represented in binary as 00000010100101000001111010011100), return 964176192 (represented in binary as001

Leetcod面试经典150题刷题记录——数组 / 字符串篇

数组 / 字符串篇 1. 合并两个有序数组Python3排序法双指针法 2. 删除有序数组中的重复元素3. H 指数Python3排序法计数排序法二分查找 有个技巧,若想熟悉语言的写法,可以照着其它语言的题解,写目标语言的代码,比如有C/C++的题解,写Python的算法,这样同时可以对比两种语言,并熟悉Python代码中API的使用,并且可以增强代码的迁移能力,语言只是一种

leetcod 面试题49 丑数

解题思路:因为丑数只能被2,3,5整除,那么只要用已有的丑数乘以2,3,5就可以得到新的丑数,但是不能依次添加靠前面的数乘以2,3,5,再添加后面的数乘以2,3,5,因为会出现前面的积比后面的积结果更大的情况,例如3 * 3 > 4 * 2,所以用三个指针选择合适的数添加到丑数序列中,这样既可以做到每个数乘以2,3,5的积都有添加进来,又可以以正确而且不重复的顺序添加,代码如下: class S