zl程序教程

LeetCode 86题

  • LeetCode每日一题-3:回文链表

    LeetCode每日一题-3:回文链表

    题目描述:请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true思路分析:迭代法:避免使用 O(n)O(n) 额外空间的方法就是改变输入。我们可以将链表的前(后)半部分反转(修改链表结构),然后将前半部分和后半部分进行比较。比较完成后我们应该将链表恢复原样。虽然不需要恢复也能通过测试用例,但是使用该函

    日期 2023-06-12 10:48:40     
  • LeetCode每日一题-5:删除排序链表中的重复元素

    LeetCode每日一题-5:删除排序链表中的重复元素

    题目描述:给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入: 1->1->2 输出: 1->2 示例 2:输入: 1->1->2->3->3 输出: 1->2->3思路分析:这是一个简单的问题,仅测试你操作列表的结点指针的能力。由于输入的列表已排序,因此我们可以通过将结点的值与它之后的结点进行比较来确定它是否为重复结

    日期 2023-06-12 10:48:40     
  • LeetCode每日一题-6:k个一组翻转链表

    LeetCode每日一题-6:k个一组翻转链表

    题目描述:给你一个链表,每 k 个节点一组进行翻转,请你返回翻转后的链表。k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是 k 的整数倍,那么请将最后剩余的节点保持原有顺序。示例:给你这个链表:1->2->3->4->5当 k = 2 时,应当返回: 2->1->4->3->5当 k = 3 时,应当返回: 3->2->1-

    日期 2023-06-12 10:48:40     
  • LeetCode每日一题-7:有效的括号

    LeetCode每日一题-7:有效的括号

    题目描述:给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合。示例 1:输入:s = "()" 输出:true示例 2:输入:s

    日期 2023-06-12 10:48:40     
  • LeetCode每日一题-8:重塑矩阵

    LeetCode每日一题-8:重塑矩阵

    题目描述:在仅包含 0 和 1 的数组 A 中,一次 K 位翻转包括选择一个长度为 K 的(连续)子数组,同时将子数组中的每个 0 更改为 1,而每个 1 更改为 0。返回所需的 K 位翻转的最小次数,以便数组没有值为 0 的元素。如果不可能,返回 -1。示例 1:输入:A = [0,1,0], K = 1 输出:2 解释:先翻转 A[0],然后翻转 A[2]。示例 2:输入:A = [1,1,0

    日期 2023-06-12 10:48:40     
  • LeetCode每日一题:翻转二叉树

    LeetCode每日一题:翻转二叉树

    题目描述:翻转一棵二叉树。示例:输入:输出:思路分析:通过观察,我们发现只要把二叉树上的每一个节点的左右子节点进行交换,最后的结果就是完全翻转之后的二叉树。这道题目比较简单,关键思路在于我们发现翻转整棵树就是交换每个节点的左右子节点,于是我们把交换左右子节点的代码放在了前序遍历的位置。值得一提的是,如果把交换左右子节点的代码放在后序遍历的位置也是可以的,但是放在中序遍历的位置是不行的。Java实现

    日期 2023-06-12 10:48:40     
  • leetcode 斐波那契数列 javascript实现

    leetcode 斐波那契数列 javascript实现

    写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项(即 F(N))。斐波那契数列的定义如下:F(0) = 0,   F(1) = 1 F(N) = F(N - 1) + F(N - 2), 其中 N > 1. 斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。答案需要取模 1e9+7(1000000007),如计算初始结果为:10000000

    日期 2023-06-12 10:48:40     
  • leetcode 1019. 链表中的下一个更大节点 js实现

    leetcode 1019. 链表中的下一个更大节点 js实现

    给定一个长度为 n 的链表 head对于列表中的每个节点,查找下一个 更大节点 的值。也就是说,对于每个节点,找到它旁边的第一个节点的值,这个节点的值 严格大于 它的值。返回一个整数数组 answer ,其中 answer[i] 是第 i 个节点( 从1开始 )的下一个更大的节点的值。如果第 i 个节点没有下一个更大的节点,设置 answer[i] = 0 。输入:head = [2,1,5] 输

    日期 2023-06-12 10:48:40     
  • leetcode 78. 子集 js 实现

    leetcode 78. 子集 js 实现

    给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)。解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。示例 1:输入:nums = [1,2,3] 输出:[[],[1],[2],[1,2],[3],[1,3],[2,3],[1,2,3]] 示例 2:输入:nums = [0] 输出:[[],[0]] 提示:1 <= nums.length &l

    日期 2023-06-12 10:48:40     
  • LeetCode977(有序数组的平方)

    LeetCode977(有序数组的平方)

    每日一题——LeetCode977(有序数组的平方)https://www.bilibili.com/video/BV17S4y1m7d1题意 难度:简单给你一个按 非递减顺序 排序的整数数组 nums,返回 每个数字的平方 组成的新数组,要求也按 非递减顺序 排序。示例 1:输入:nums = [-4,-1,0,3,10] 输出:[0,1,9,16,100] 解释:平方后,数组变为 [16,1,

    日期 2023-06-12 10:48:40     
  • ☆打卡算法☆LeetCode 212. 单词搜索 II  算法解析

    ☆打卡算法☆LeetCode 212. 单词搜索 II 算法解析

    大家好,我是小魔龙,Unity3D软件工程师,VR、AR,虚拟仿真方向,不定时更新软件开发技巧,生活感悟,觉得有用记得一键三连哦。一、题目1、算法题目“给定一个二维字符网格和一个单词列表,返回二维网格中的所有单词。”题目链接:来源:力扣(LeetCode)链接: 212. 单词搜索 II - 力扣(LeetCode)2、题目描述给定一个 m x n 二维字符网格 board 和一个单词(字符串)列

    日期 2023-06-12 10:48:40     
  • ☆打卡算法☆LeetCode 218. 天际线问题 算法解析

    ☆打卡算法☆LeetCode 218. 天际线问题 算法解析

    大家好,我是小魔龙,Unity3D软件工程师,VR、AR,虚拟仿真方向,不定时更新软件开发技巧,生活感悟,觉得有用记得一键三连哦。一、题目1、算法题目“给定所有建筑物的位置和高度,返回这些建筑物形成的天际线。”题目链接:来源:力扣(LeetCode)链接: 218. 天际线问题 - 力扣(LeetCode)2、题目描述城市的 天际线 是从远处观看该城市中所有建筑物形成的轮廓的外部轮廓。给你所有建筑

    日期 2023-06-12 10:48:40     
  • ☆打卡算法☆LeetCode 225. 用队列实现栈 算法解析

    ☆打卡算法☆LeetCode 225. 用队列实现栈 算法解析

    大家好,我是小魔龙,Unity3D软件工程师,VR、AR,虚拟仿真方向,不定时更新软件开发技巧,生活感悟,觉得有用记得一键三连哦。一、题目1、算法题目“使用两个队列实现一个后入先出的栈,支持栈的全部四种操作。”题目链接:来源:力扣(LeetCode)链接: 225. 用队列实现栈 - 力扣(LeetCode)2、题目描述请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作

    日期 2023-06-12 10:48:40     
  • 几道入门的回溯题 | LeetCode

    几道入门的回溯题 | LeetCode

    “回学校后发现大家都在不停的卷,而自己本周只写了没几道力扣题目... ”这周写的几道题整体上都是回溯类型的,也都是些入门级的回溯问题。整体有一套回溯的模板,周末了做个简单的总结记录,也是为了“交作业”哈。关于回溯自己之前转载了一篇大神的文章:回溯详解(强推) liweiwei1419,公众号:做棵大树回溯算法入门级详解 | 优秀文章有兴趣的可以看看。 LC22. 括号生成“数字 n 代表生成括号的

    日期 2023-06-12 10:48:40     
  • 有效的括号(leetcode 20)

    有效的括号(leetcode 20)

    文章目录1.问题描述2.难度等级3.热门指数4.解题思路5.实现示例5.1 C++5.2 Golang参考文献1.问题描述给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。示例 1:输入:s = "()" 输

    日期 2023-06-12 10:48:40     
  • LeetCode笔记:Biweekly Contest 87

    LeetCode笔记:Biweekly Contest 87

    LeetCode笔记:Biweekly Contest 87 0. 小结1. 题目一 1. 解题思路2. 代码实现2. 题目二 1. 解题思路2. 代码实现3. 题目三 1. 解题思路2. 代码实现4. 题目四 1. 解题思路2. 代码实现比赛链接:https://leetcode.com/contest/biweekly-contest-87/0. 小结这一次题目倒是都搞定了,不过没有参加比赛,

    日期 2023-06-12 10:48:40     
  • LeetCode笔记:Weekly Contest 309

    LeetCode笔记:Weekly Contest 309

    LeetCode笔记:Weekly Contest 309 0. 赛后总结1. 题目一 1. 解题思路2. 代码实现2. 题目二 1. 解题思路2. 代码实现3. 算法优化3. 题目三 1. 解题思路2. 代码实现3. 算法优化4. 题目四 1. 解题思路2. 代码实现比赛链接:https://leetcode.com/contest/weekly-contest-309/0. 赛后总结这次的比赛

    日期 2023-06-12 10:48:40     
  • LeetCode第一题:两数之和-C++

    LeetCode第一题:两数之和-C++

    大家好,又见面了,我是你们的朋友全栈君。 自己的解答(简单的遍历所有可能的组合,找到最终的结果): 【不是特别熟悉C++,先有一个vector的插入:vector.puch_back(),主要是各种运用的不熟练,希望能有改进】 给出简单代码: class Solution { public: vector<int> twoSum(vector<int>

    日期 2023-06-12 10:48:40     
  • LeetCode笔记:Biweekly Contest 83

    LeetCode笔记:Biweekly Contest 83

    LeetCode笔记:Biweekly Contest 83 0. 小结1. 题目一 1. 解题思路2. 代码实现2. 题目二 1. 解题思路2. 代码实现3. 题目三 1. 解题思路2. 代码实现4. 题目四 1. 解题思路2. 代码实现比赛链接:https://leetcode.com/contest/biweekly-contest-830. 小结这周的两个比赛也是有点伤,都是大佬们只需要7

    日期 2023-06-12 10:48:40     
  • LeetCode笔记:Biweekly Contest 84

    LeetCode笔记:Biweekly Contest 84

    LeetCode笔记:Biweekly Contest 84 1. 题目一 1. 解题思路2. 代码实现2. 题目二 1. 解题思路2. 代码实现3. 题目三 1. 解题思路2. 代码实现4. 题目四 1. 解题思路2. 代码实现比赛链接:https://leetcode.com/contest/biweekly-contest-84/1. 题目一给出题目一的试题链接如下:2363. Merge

    日期 2023-06-12 10:48:40     
  • LeetCode笔记:Biweekly Contest 85

    LeetCode笔记:Biweekly Contest 85

    LeetCode笔记:Biweekly Contest 85 1. 题目一 1. 解题思路2. 代码实现2. 题目二 1. 解题思路2. 代码实现3. 题目三 1. 解题思路2. 代码实现4. 题目四 1. 解题思路2. 代码实现3. 算法优化比赛链接:https://leetcode.com/contest/biweekly-contest-85/1. 题目一给出题目一的试题链接如下:2379.

    日期 2023-06-12 10:48:40     
  • LeetCode笔记:Weekly Contest 302

    LeetCode笔记:Weekly Contest 302

    LeetCode笔记:Weekly Contest 302 0. 序言1. 题目一 1. 解题思路2. 代码实现2. 题目二 1. 解题思路2. 代码实现3. 题目三 1. 解题思路2. 代码实现4. 题目四 1. 解题思路2. 代码实现比赛链接:https://leetcode.com/contest/weekly-contest-302/0. 序言这一次的比赛整体上来说感觉算是比较简单的,第一

    日期 2023-06-12 10:48:40     
  • LeetCode笔记:Weekly Contest 303

    LeetCode笔记:Weekly Contest 303

    LeetCode笔记:Weekly Contest 303 1. 题目一 1. 解题思路2. 代码实现2. 题目二 1. 解题思路2. 代码实现3. 题目三 1. 解题思路2. 代码实现4. 题目四 1. 解题思路2. 代码实现比赛链接:https://leetcode.com/contest/weekly-contest-303/1. 题目一给出题目一的试题链接如下:2351. First Le

    日期 2023-06-12 10:48:40     
  • LeetCode笔记:Weekly Contest 307

    LeetCode笔记:Weekly Contest 307

    LeetCode笔记:Weekly Contest 307 1. 题目一 1. 解题思路2. 代码实现2. 题目二 1. 解题思路2. 代码实现3. 题目三 1. 解题思路2. 代码实现4. 题目四 1. 解题思路2. 代码实现比赛链接:https://leetcode.com/contest/weekly-contest-3071. 题目一给出题目一的试题链接如下:2383. Minimum H

    日期 2023-06-12 10:48:40     
  • <leetcode刷题-数组> 【双指针】旋转数组

    <leetcode刷题-数组> 【双指针】旋转数组

    题目给你一个数组,将数组中的元素向右轮转 k 个位置,其中 k 是非负数 示例 1:输入: nums = [1,2,3,4,5,6,7], k = 3 输出: [5,6,7,1,2,3,4]复制思路分析 关键点:旋转把这个数组比喻成一个圆的直径,当我们翻转180°时,令left为最左边,right为正好落在了最后边。当我们再次翻转180°,又会还原成自己。所以针对这个数组,当我们进行2次翻转,数组

    日期 2023-06-12 10:48:40     
  • 日拱一卒,LeetCode23,攻克难题从这道题开始吧

    日拱一卒,LeetCode23,攻克难题从这道题开始吧

    作者 | 梁唐大家好,我是梁唐。我们今天来看LeetCode的23题,合并K个升序链表。这道题的难度是Hard,是的,这是一道难题。先别急着害怕,难题其实并没有那么吓人。只要心怀不畏困难的勇气,加上每天坚持的训练,不用多久就可以将难题斩于马下。废话不多说,我们来看这道题的题意:给你一个链表数组,每个链表都已经按升序排列。请你将所有链表合并到一个升序链表中,返回合并后的链表。题意很简单,就是让我们把

    日期 2023-06-12 10:48:40     
  • 日拱一卒,LeetCode周赛287,训练你的逆向思维

    日拱一卒,LeetCode周赛287,训练你的逆向思维

    作者 | 梁唐大家好,日拱一卒,我是梁唐。今天是周一,老规矩,我们来看昨天上午的LeetCode周赛。这次的比赛由地平线公司赞助,似乎是一家小公司,给的比赛奖励和内推机会都比较少。居然只有前5名能获得内推……说实话有点搞笑……这次的赛题总体偏简单,适合新人练手。好了,废话不多说了,我们一起来看题吧。转化时间需要的最少操作数难度:1星给你两个字符串 current 和 correct ,表示两个 2

    日期 2023-06-12 10:48:40     
  • 老梁你居然说刷LeetCode Easy找不到工作,你一定没做过Java

    老梁你居然说刷LeetCode Easy找不到工作,你一定没做过Java

    作者 | 梁唐大家好,我是梁唐。最近遇到一件让我挺难受的事,老梁在知乎的付费咨询里被人给打了差评。打了差评的原因居然是觉得老梁没有做过Java相关的工作……说实话,看到这句话的时候,我真想找出当年阿里主搜团队的offer甩在他脸上,要知道老梁当年是一年的工作经验破格录取拿到offer的……事情的起因是前两天老梁在知乎的付费咨询收到了一条提问:这里面几个关键字非常惊人,自学Java、转行、三个月时间

    日期 2023-06-12 10:48:40     
  • LeetCode第三题,五个版本迭代优化带你吃透two pointers算法

    LeetCode第三题,五个版本迭代优化带你吃透two pointers算法

    作者 | 梁唐大家好,我是梁唐。今天给大家带来LeetCode第三题的题解——无重复字符的最长子串,题意等描述来源于力扣官网。题意给定一个字符串s,要求返回其中不包含重复字符的最长子串的长度。样例示例 1: 输入: s = "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: s = &qu

    日期 2023-06-12 10:48:40     
  • LeetCode 1. 两数之和 Two Sum「建议收藏」

    LeetCode 1. 两数之和 Two Sum「建议收藏」

    大家好,又见面了,我是你们的朋友全栈君。给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。你可以假设每个输入只对应一种答案,且同样的元素不能被重复利用。示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1] 解决方案 方法一:暴力法 暴力法很简单。遍历每个

    日期 2023-06-12 10:48:40     
  • 【Leetcode 346/700】79. 单词搜索-回溯深度搜索JavaScript版

    【Leetcode 346/700】79. 单词搜索-回溯深度搜索JavaScript版

    1.题目 n 二维字符网格 board 和一个字符串单词 word 。如果 word 存在于网格中,返回 true ;否则,返回 false 。单词必须按照字母顺序,通过相邻的单元格内的字母构成,其中“相邻”单元格是那些水平相邻或垂直相邻的单元格。同一个单元格内的字母不允许被重复使用。示例 1:输入:board = [["A","B","C&quo

    日期 2023-06-12 10:48:40