LeetCode

最长递增子序列

作者:Grey 原文地址: 最长递增子序列 问题描述 LeetCode 300. 最长递增子序列 说明:这里的递增指的是严格递增,相等的时候不算递增。 暴力解法 dp[i]表示: 必须以i位置结尾的最长递增子序列是多少,如果求出了每个位置的dp[i]值,最大的dp[i]值,就是最长递增子序列的长度 ... »

【LeetCode】49. 字母异位词分组

49. 字母异位词分组 知识点:字符串;哈希表 题目描述 给你一个字符串数组,请你将 字母异位词 组合在一起。可以按任意顺序返回结果列表。 字母异位词 是由重新排列源单词的字母得到的一个新单词,所有源单词中的字母通常恰好只用一次。 示例 示例 1: 输入: strs = ["eat", "tea", ... »

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

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

【LeetCode】567. 字符串的排列

567. 字符串的排列 知识点:字符串;滑动窗口 题目描述 给你两个字符串 s1 和 s2 ,写一个函数来判断 s2 是否包含 s1 的排列。如果是,返回 true ;否则,返回 false 。 换句话说,s1 的排列之一是 s2 的 子串 。 示例 示例 1: 输入:s1 = "ab" s2 = ... »

【LeetCode】76. 最小覆盖子串

76. 最小覆盖子串 知识点:字符串;滑动窗口 题目描述 给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中不存在涵盖 t 所有字符的子串,则返回空字符串 "" 。 注意: 对于 t 中重复字符,我们寻找的子字符串中该字符数量必须不少于 t 中该字符数量。 ... »

【LeetCode】663.均匀树划分

663.均匀树划分 知识点:二叉树;递归 题目描述 给定一棵二叉树,允许剪断一个树枝,这样能生成两棵树,问是否存在一条树枝,使得其被剪断后产生的两棵树的节点和相等。 示例 样例 1: 输入: 5 / \ 10 10 / \ 2 3 输出: True 解释: 5 / 10 和: 15 10 / \ 2 ... »

【LeetCode】358.K 距离间隔重排字符串

358.K 距离间隔重排字符串 知识点:哈希表;贪心;堆;队列 题目描述 给你一个非空的字符串 s 和一个整数 k,你要将这个字符串中的字母进行重新排列,使得重排后的字符串中相同字母的位置间隔距离至少为 k。 所有输入的字符串都由小写字母组成,如果找不到距离至少为 k 的重排结果,请返回一个空字符串 ... »

Leetcode78/90/491之回溯中的子集问题

回溯之子集问题 子集问题和组合问题特别像 Leetcode78-子集 给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集) 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集 输入:nums = [1,2,3] 输出:[[],[1],[2],[1,2],[3 ... »

Leetcode216/39/40/77之回溯解决经典组合问题

Leetcode216-组合总和三 找出所有相加之和为 n 的 k 个数的组合,且满足下列条件: 只使用数字1到9 每个数字 最多使用一次 返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次,组合可以以任何顺序返回 输入: k = 3, n = 7 输出: [[1,2,4]] Array ... »

LeetCode 剑指 Offer 22. 链表中倒数第k个节点

剑指 Offer 22. 链表中倒数第k个节点 题意 输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。 ​ 例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1、2、3、4、5、6,则这个链表的倒数第 3 个节点是值为 4 ... »

hyacinthLJP 刷题

【LeetCode】11. 盛最多水的容器

11. 盛最多水的容器 知识点:双指针 题目描述 给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0) 和 (i, height[i]) 。 找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。 返回容器可以储存的最大水量。 说明:你 ... »

LeetCode刷题知识点总结——二叉树

二叉树 一、二叉树理论基础 1.满二叉树:如果一棵二叉树只有度为0的结点和度为2的结点,并且度为0的结点在同一层上,则这棵二叉树为满二叉树。通俗话理解:从底层开始到顶部的所有节点都全部填满的二叉树。深度为k,则有2^k-1个节点 2.完全二叉树:除了最底层节点没有节满,其余每层节点都达到最大值,并且 ... »

haipengwu

Leetcode刷题之链表增加头结点的前缀节点

链表之增加头结点的前缀节点 在许多链表题中往往需要在题目给的头结点之前增加一个前缀节点 通常在删除链表和头结点需要交换时需要用到这一操作 因为增加这个节点就避免了对删除头结点这种特殊情况的特殊处理 而且往往在声明一个前缀节点之后再复制一个,前者保存不动用于最后结果返回,后者参与之后的操作 ​ Lee ... »

滑动窗口法——Leetcode例题

滑动窗口法——Leetcode例题(连更未完结) 1. 方法简介 滑动窗口法可以理解为一种特殊的双指针法,通常用来解决数组和字符串连续几个元素满足特殊性质问题(对于字符串来说就是子串)。滑动窗口法的显著特征是:两个指针同方向运动,且往往要对窗口内每个元素都加以处理。 滑动窗口法(以鄙人目前的程度)来 ... »

【leetcode 29】 两数相除(中等)

题目描述 给定两个整数,被除数 dividend 和除数 divisor。将两数相除,要求不使用乘法、除法和 mod 运算符。 返回被除数 dividend 除以除数 divisor 得到的商。 整数除法的结果应当截去(truncate)其小数部分,例如:truncate(8.345) = 8 以及 ... »

jeremylai7

leetcode-3无重复字符的最长子串

题目原题: 给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。 示例 1: 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: s = "bbbbb" 输出: 1 解释: 因为无重复字符的最长子 ... »

leetcode210.拓扑排序

拓扑排序能否成功,其实就是看有没有环 有环:说明环内结点互为前置,永远也不可能完成 无环:是线性的,可以完成 DFS方法 思路: 逆向思维,遍历到边界点(无邻接点相当于叶子),再不断回溯将结点加入到结果中,得到的是拓扑排序的逆序,进行反转即可得到拓扑序列。 遍历过程中判断是否有环。 注意:要使用vi ... »