zl程序教程

LeetCode

  • 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 2. 两数相加 js 实现

    leetcode 2. 两数相加 js 实现

    给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例 1:输入:l1 = [2,4,3], l2 = [5,6,4] 输出:[7,0,8] 解释:342 + 465 = 807. 示例 2:输入:l1 = [0], l

    日期 2023-06-12 10:48:40     
  • leetcode 258. 各位相加 js 实现

    leetcode 258. 各位相加 js 实现

    给定一个非负整数 num,反复将各个位上的数字相加,直到结果为一位数。返回这个结果。示例 1:输入: num = 38 输出: 2 解释: 各位相加的过程为: 38 --> 3 + 8 --> 11 11 --> 1 + 1 --> 2 由于 2 是一位数,所以返回 2。 示例 1:输入: num = 0 输出: 0 提示:0 <= num <= 231 -

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

    LeetCode笔记:Weekly Contest 308

    LeetCode笔记:Weekly Contest 308 0. 小结1. 题目一 1. 解题思路2. 代码实现2. 题目二 1. 解题思路2. 代码实现3. 题目三 1. 解题思路2. 代码实现4. 题目四 1. 解题思路2. 代码实现比赛链接:https://leetcode.com/contest/weekly-contest-308/0. 小结这次的比赛倒是挺顺利的,大概前后也就花了不到一

    日期 2023-06-12 10:48:40     
  • ☆打卡算法☆LeetCode 207. 课程表   算法解析

    ☆打卡算法☆LeetCode 207. 课程表 算法解析

    大家好,我是小魔龙,Unity3D软件工程师,VR、AR,虚拟仿真方向,不定时更新软件开发技巧,生活感悟,觉得有用记得一键三连哦。一、题目1、算法题目“给定一个学期应该学习的课程数,判断是否可能完成所有课程的学习。”题目链接:来源:力扣(LeetCode)链接: 207. 课程表 - 力扣(LeetCode)2、题目描述你这个学期必须选修 numCourses 门课程,记为 0 到 numCour

    日期 2023-06-12 10:48:40     
  • ☆打卡算法☆LeetCode 208. 实现 Trie (前缀树)   算法解析

    ☆打卡算法☆LeetCode 208. 实现 Trie (前缀树) 算法解析

    大家好,我是小魔龙,Unity3D软件工程师,VR、AR,虚拟仿真方向,不定时更新软件开发技巧,生活感悟,觉得有用记得一键三连哦。一、题目1、算法题目“实现Trie类,Trie类是一种树形数据结构,用于高效储存和检索字符串数据集中的键。”题目链接:来源:力扣(LeetCode)链接: 208. 实现 Trie (前缀树) - 力扣(LeetCode)2、题目描述Trie(发音类似 "tr

    日期 2023-06-12 10:48:40     
  • ☆打卡算法☆LeetCode 209. 长度最小的子数组   算法解析

    ☆打卡算法☆LeetCode 209. 长度最小的子数组 算法解析

    大家好,我是小魔龙,Unity3D软件工程师,VR、AR,虚拟仿真方向,不定时更新软件开发技巧,生活感悟,觉得有用记得一键三连哦。一、题目1、算法题目“给定一个整数数组和正整数target,找出数组中满足≥target的长度最小的子数组,返回其长度。”题目链接:来源:力扣(LeetCode)链接: 209. 长度最小的子数组 - 力扣(LeetCode)2、题目描述给定一个含有 n 个正整数的数组

    日期 2023-06-12 10:48:40     
  • ☆打卡算法☆LeetCode 211. 添加与搜索单词 - 数据结构设计  算法解析

    ☆打卡算法☆LeetCode 211. 添加与搜索单词 - 数据结构设计 算法解析

    大家好,我是小魔龙,Unity3D软件工程师,VR、AR,虚拟仿真方向,不定时更新软件开发技巧,生活感悟,觉得有用记得一键三连哦。一、题目1、算法题目“设计一个数据结构,支持添加新单词和查找字符串是否与任何以前添加的字符串匹配。”题目链接:来源:力扣(LeetCode)链接: 211. 添加与搜索单词 - 数据结构设计 - 力扣(LeetCode)2、题目描述请你设计一个数据结构,支持 添加新单词

    日期 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 220. 存在重复元素 III 算法解析

    ☆打卡算法☆LeetCode 220. 存在重复元素 III 算法解析

    大家好,我是小魔龙,Unity3D软件工程师,VR、AR,虚拟仿真方向,不定时更新软件开发技巧,生活感悟,觉得有用记得一键三连哦。一、题目1、算法题目“给定一个整数数组和一个整数k和t,判断数组中是否存在两个不同下标的索引使得abs(nums[i] - nums[j]) <= t ,同时又满足 abs(i - j) <= k,存在返回true。”题目链接:来源:力扣(LeetCode)

    日期 2023-06-12 10:48:40     
  • ☆打卡算法☆LeetCode 222. 完全二叉树的节点个数 算法解析

    ☆打卡算法☆LeetCode 222. 完全二叉树的节点个数 算法解析

    大家好,我是小魔龙,Unity3D软件工程师,VR、AR,虚拟仿真方向,不定时更新软件开发技巧,生活感悟,觉得有用记得一键三连哦。一、题目1、算法题目“给定一颗二叉树,求出该树的节点个数。”题目链接:来源:力扣(LeetCode)链接: 222. 完全二叉树的节点个数 - 力扣(LeetCode)2、题目描述给你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。完全二叉树 的定义如下:在

    日期 2023-06-12 10:48:40     
  • ☆打卡算法☆LeetCode 203. 移除链表元素 算法解析

    ☆打卡算法☆LeetCode 203. 移除链表元素 算法解析

    大家好,我是小魔龙,Unity3D软件工程师,VR、AR,虚拟仿真方向,不定时更新软件开发技巧,生活感悟,觉得有用记得一键三连哦。一、题目1、算法题目“给定一个链表头结点和一个整数val,删除链表中所有能满足Node.val == val的节点,返回新的头结点。”题目链接:来源:力扣(LeetCode)链接: 203. 移除链表元素 - 力扣(LeetCode)2、题目描述给你一个链表的头节点 h

    日期 2023-06-12 10:48:40     
  • [LeetCode]238. 除自身以外数组的乘积

    [LeetCode]238. 除自身以外数组的乘积

    题目给你一个长度为 n 的整数数组 nums,其中 n > 1,返回输出数组 output ,其中 output[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积。示例:输入: [1,2,3,4] 输出: [24,12,8,6] 复制提示:题目数据保证数组之中任意元素的全部前缀元素和后缀(甚至是整个数组)的乘积都在 32 位整数范围内。说明: 请不要使用除法,且在 O(n)

    日期 2023-06-12 10:48:40     
  • 上升下降字符串 | LeetCode

    上升下降字符串 | LeetCode

    “好久没刷 LeetCode 了,刚打开页面,啪,每日一题就显示出来了,很快啊。 ”今天的每日一题是字符串的easy题目,可我还是花了有一二十分钟,许久不刷题手都生了。题目 上升下降字符串给你一个字符串 s ,请你根据下面的算法重新构造字符串:从 s 中选出 最小 的字符,将它 接在 结果字符串的后面。从 s剩余字符中选出 最小 的字符,且该字符比上一个添加的字符大,将它 接在 结果字符串后面。重

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

    LeetCode笔记:Weekly Contest 310

    LeetCode笔记:Weekly Contest 310 0. 总结1. 题目一 1. 解题思路2. 代码实现2. 题目二 1. 解题思路2. 代码实现3. 题目三 1. 解题思路2. 代码实现4. 题目四 1. 解题思路比赛链接:https://leetcode.com/contest/weekly-contest-3100. 总结这次的比赛真心被伤到了,第一名的大佬6分钟就搞定了4道题,然而

    日期 2023-06-12 10:48:40     
  • 动态规划应用–最长递增子序列 LeetCode 300[通俗易懂]

    动态规划应用–最长递增子序列 LeetCode 300[通俗易懂]

    大家好,又见面了,我是你们的朋友全栈君。 文章目录1. 问题描述2. 解题思路2.1 动态规划2.2 二分查找1. 问题描述有一个数字序列包含n个不同的数字,如何求出这个序列中的最长递增子序列长度?比如2,9,3,6,5,1,7这样一组数字序列,它的最长递增子序列就是2,3,5,7,所以最长递增子序列的长度是4。 https://leetcode-cn.com/problems/longes

    日期 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笔记:Weekly Contest 305

    LeetCode笔记:Weekly Contest 305

    LeetCode笔记:Weekly Contest 305 0. 小结1. 题目一 1. 解题思路2. 代码实现2. 题目二 1. 解题思路2. 代码实现3. 题目三 1. 解题思路2. 代码实现4. 题目四 1. 解题思路2. 代码实现比赛链接:https://leetcode.com/contest/weekly-contest-305/0. 小结这次的比赛挺伤的,上午做昨晚的双周赛倒是挺顺利

    日期 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     
  • Longest Common Prefix_LeetCode

    Longest Common Prefix_LeetCode

    大家好,又见面了,我是你们的朋友全栈君。1.思路:求strs数组的长度,当len==0,len==1分开考虑;i从1-min_len,以strs[0][i]作为对照,一旦出现strs[j][i]!=strs[0][i],结束循环,则输出之前判断好了的字符串。 class Solution: def longestCommonPrefix(self, strs): "

    日期 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之后,我总结出了这几条刷题技巧

    在刷了几百道LeetCode之后,我总结出了这几条刷题技巧

    作者 | 梁唐大家好,我是梁唐。最近参加了几周LeetCode周赛,找回了一些当年比赛的感觉,也简单总结了一些常用的技巧,希望能够帮助到大家。string的修改首先来聊聊string类型的修改,众所周知,string是C++当中的字符串类型,我们可以很方便地对字符串进行拼接以及比较等处理。关于string类型要注意什么呢?要注意每一次的赋值是一个O(n)的操作,这里的n指的是字符串的长度。比如这周

    日期 2023-06-12 10:48:40     
  • 【leetCode】整数反转

    【leetCode】整数反转

    题目给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1: 输入: 123 输出: 321 示例 2: 输入: -123 输出: -321 示例 3: 输入: 120 输出: 21 注意:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231, 231 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。链接:https://l

    日期 2023-06-12 10:48:40     
  • leetcode之 两数之和 题目解答C/python

    leetcode之 两数之和 题目解答C/python

    大家好,又见面了,我是你们的朋友全栈君。题目描述链接:https://leetcode-cn.com/problems/two-sum给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例:给定 nums = [2, 7, 11, 15], target

    日期 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     
  • [LeetCode221. 最大正方形] | 刷题打卡

    [LeetCode221. 最大正方形] | 刷题打卡

    一、题目描述:在一个由 0 和 1 组成的二维矩阵内,找到只包含 1 的最大正方形,并返回其面积。在一个由 '0' 和 '1' 组成的二维矩阵内,找到只包含 '1' 的最大正方形,并返回其面积。示例 1:输入:matrix = [ ["1","0","1","0&qu

    日期 2023-06-12 10:48:40     
  • LeetCode 700题 题解答案集合 Python

    LeetCode 700题 题解答案集合 Python

    大家好,又见面了,我是你们的朋友全栈君。2019.5.12更新至题号796,目前共有265题。2019.5.26更新至题号72, 目前共有347题。2019.6.16更新至题号70,目前共有382题。2019.7.7更新至题号5120,目前共有442题。2019.8.5更新至题号1147,目前共有502题。2019.9.6更新至题号288, 目前共有551题。2019.11.13更新至题号426,

    日期 2023-06-12 10:48:40     
  • LeetCode刷题系列(1)

    LeetCode刷题系列(1)

    1.合并两个有序列表分析:设置一个前哨结点prev,prev始终指向L1和L2中较小的节点,这样就能依次将节点按照从小到大的顺序串起来。 代码:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * ListNode() : val(0)

    日期 2023-06-12 10:48:40     
  • LeetCode刷题系列(3)

    LeetCode刷题系列(3)

    1 全排列方法一:c++的next_permutation()封装了全排列的实现,注意使用前先排序。 代码:class Solution { public: vector<vector<int>> permute(vector<int>& nums) { vector<vector<int>> res;

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