【力扣热题100】287. 寻找重复数 写在最前面理解解决 "寻找重复数" 问题的算法问题描述弗洛伊德的乌龟和兔子方法为什么这个方法有效? 代码复杂度 总结回顾 写在最前面 刷一道力扣热题100吧 难度中等 一年...
-
leetcode 算法 职场和发展 学习 程序人生 AI编程 python 【力扣热题100】287. 寻找重复数(弗洛伊德的乌龟和兔子方法)
-
c语言 c++ 数据结构 算法 LeetCode 27.移除元素
文章目录 题目分析解题思路思路1:暴力求解 --- 遍历接口源码:思路2:空间换时间接口源码:思路3:双指针(快慢指针)接口源码: 题目链接LeetCode 27.移除元素 题目分析 给你一个数组...
-
算法 动态规划 c++ 数据结构 深度优先 LeetCode 1349. 参加考试的最大学生数,状压DP
一、题目 1、题目描述 给你一个 m * n 的矩阵 seats 表示教室中的座位分布。如果座位是坏的(不可用),就用 '#' 表示;否则,用 '.' 表示。 学生可以看到左侧、右侧、左上、右上这四个方向上紧邻他的学生的...
-
【数据结构】LRU缓存的简单模拟实现(leetcode力扣146LRU缓存)
文章目录 一、定义二、LRU模拟实现二、代码实现 一、定义 LRU是Least Recently Used的缩写,意思是最近最少使用,它是一种Cache替换算法。 Cache的容量有限,因此当Cache的容量用完后,而又有...
-
linux 环形链表、环形链表 II、有效的括号(leetcode)
目录 一、环形链表 方法(快慢指针): 二、环形链表 II 三、有效的括号 一、环形链表 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环...
-
算法 数据结构 c语言 leetcode-链表经典题
1.反转单链表 206. 反转链表https://leetcode.cn/problems/reverse-linked-list/这里我们使用创建一个变量cur来遍历原链表,再创建一个新节点newnode,首先使用一个循...
-
leetcode 算法 数据结构 力扣376周赛
力扣第376场周赛 找出缺失和重复的数字 map模拟 划分数组并满足最大差限制 排序后直接模拟 使数组成为等数数组的最小代价 找到中位数再二分最近的回文 //代码来自TsReaper // 首先枚举回文数一半的长度 l...
-
golang 数据结构 后端 算法leetcode|91. 解码方法(rust重拳出击)
文章目录 91. 解码方法:样例 1:样例 2:样例 3:提示: 分析:题解:rust:go:c++:python:java: 91. 解码方法: 一条包含字母 A-Z 的消息通过以下映射进行了 编码 : 要 解码 已...
-
排序算法 算法 leetcode 计数排序 | Counting Sort
计数排序是一种基于特定范围之间的键的排序技术。它通过计算具有不同键值(散列类型)的对象的数量来工作,然后做一些算术来计算每个对象在输出序列中的位置。 计数排序的特点 计数排序对数据进行假设,例如,它假设值将在 0 到 10...
-
算法 c++ 子数组 【滑动窗口】【map】LeetCode:76最小覆盖子串
作者推荐 【二叉树】【单调双向队列】LeetCode239:滑动窗口最大值 本文涉及的基础知识点 C++算法:滑动窗口总结 题目 给你一个字符串 s 、一个字符串 t 。返回 s 中涵盖 t 所有字符的最小子串。如果 s 中...
-
算法 c++ 第k小 [二分查找]LeetCode2040:两个有序数组的第 K 小乘积
本文涉及的基础知识点 二分查找算法合集 题目 给你两个 从小到大排好序 且下标从 0 开始的整数数组 nums1 和 nums2 以及一个整数 k ,请你返回第 k (从 1 开始编号)小的 nums1[i] * nums2...
-
二叉树 后端 leetcode 【Rust】枚举类型创建单链表以及常见的链表操作方法
目录 单链表 用枚举表达链表 枚举enum Box容器 创建节点 1. 创建并打印 2. match 匹配 3. 节点初始化 4.节点嵌套 追加节点 1. 尾插法 2. 链表追加方法 3. 头插法 4. 改写成单链表方法 遍...
-
leetcode 算法 数据结构 时间复杂度、空间复杂度实践练习(力扣OJ)
目录 文章目录 前言 题目一:轮转数组 思路一: 思路二: 思路三: 题目二:消失的数字 思路一: 思路二: 思路三: 题目三:移除元素 思路: 总结 前言 想要编写高效的...
-
算法 leetcode 一篇学完:王道考研408数据结构(全)
笔记首发于:lengyueling.cn PDF版本附在 lengyueling.cn 对应文章结尾,欢迎下载访问交流 绪论 数据结构在学什么 如何用程序代码把现实世界的问题信息化 如何用计算机高效地处理这些信息从而创造...
-
c++ 前缀和 【贪心算法】【中位贪心】LeetCode:100123.执行操作使频率分数最大
涉及知识点 双指针 C++算法:前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 贪心算法 题目 给你一个下标从 0 开始的整数数组 nums 和一个整数 k 。 你可以对数组执行 至多 k 次操作: 从数组中...
-
算法 力扣每日一道系列 --- LeetCode 160. 相交链表
江池俊: 个人主页 个人专栏: ✅数据结构探索 ✅LeetCode每日一道 有航道的人,再渺小也不会迷途。 LeetCode 160. 相交链表 思路: 首先计算两个链表的长度,然后判断两个链...
-
leetcode 二分查找 Golang每日一练(leetDay0052) 寻找旋转排序数组中的最小值I\II
目录 153. 寻找旋转排序数组中的最小值 Find Minimum In Rotated Sorted Array 154. 寻找旋转排序数组中的最小值 II Find Minimum In Rotated Sor...
-
算法 [LeetCode]链式二叉树相关题目(c语言实现)
文章目录 LeetCode965. 单值二叉树LeetCode100. 相同的树LeetCode101. 对称二叉树LeetCode144. 二叉树的前序遍历LeetCode94. 二叉树的中序遍历LeetCode145....
-
算法 swift leetcode 2439. 最小化数组中的最大值
给你一个下标从 0 开始的数组 nums ,它含有 n 个非负整数。 每一步操作中,你需要: 选择一个满足 1 0 。将 nums[i] 减 1 。将 nums[i - 1] 加 1 。 你可以对数组执行 任意 次上述操作...
-
算法 数据结构 Java LeetCode篇-二叉树经典解法(实现:判断平衡二叉树、找两个节点最近的祖先等)
博客主页: 【小扳_-CSDN博客】 ❤感谢大家点赞收藏⭐评论✍ 文章目录 1.0 平衡二叉树 1.1 实现判断平衡二叉树的思路 1.2 代码实现判断平衡二叉树 ...
-
开发语言 leetcode 算法 Java 数据结构篇-实现堆的核心方法与堆的应用(实现 TOP-K 问题:最小 k 个数)
博客主页: 【小扳_-CSDN博客】 ❤感谢大家点赞收藏⭐评论✍ 文章目录 1.0 堆的说明 2.0 堆的成员变量及其构造方法 3.0 实现堆的核心方法 ...
-
leetcode c++ 经验分享 其他 力扣编程题算法初阶之双指针算法+代码分析
目录 第一题:复写零 第二题:快乐数: 第三题:盛水最多的容器 第四题:有效三角形的个数 第一题:复写零 力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 思路: 上期介绍到双指针,这次来用双指针实际操作。第一种...
-
leetcode python 【算法】在二维不单调的矩阵上二分查找——力扣1901. 寻找峰值 II
1901. 寻找峰值 II 文章目录 【算法】在二维不单调的矩阵上二分查找——力扣1901. 寻找峰值 II问题描述示例解决思路步骤一:列转行步骤二:回到一维数组上的寻找峰值的思路步骤三:二分搜索 代码实现...
-
算法 职场和发展 链表 Java LeetCode篇-深入了解二叉树经典解法(三种方式实现:获取二叉树的最大深度)
博客主页: 【小扳_-CSDN博客】 ❤感谢大家点赞收藏⭐评论✍ 文章目录 1.0 对称二叉树 1.1 判断对称二叉树实现思路 1.2 代码实现:判断对称二叉树 ...
-
leetcode 算法 数据结构 java 实现单链表的基本操作(力扣、牛客刷题的基础&笔试题常客)
本节来学习单链表的实现。在链表的刷题中,单链表占主导地位,很多oj题都在在单链表的背景下进行;而且很多链表的面试题都是以单链表为背景命题。所以,学好单链表的基本操作很重要 目录 一.介绍单链表 1.链表及单链表 2.定义一个...
-
算法 Leetcode: 203. 移除链表元素
题目 给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 。 难度:简单 题目链接:203. 移除链表元素 示例 1: 输入:hea...
-
rust golang 数据结构 后端 算法leetcode|94. 二叉树的中序遍历(多语言实现)
文章目录 94. 二叉树的中序遍历:样例 1:样例 2:样例 3:提示: 分析:题解:rust:go:c++:python:java: 94. 二叉树的中序遍历: 给定一个二叉树的根节点 root ,返回 它的 中序...
-
golang 数据结构 后端 算法leetcode|92. 反转链表 II(rust重拳出击)
文章目录 92. 反转链表 II:样例 1:样例 2:提示:进阶: 分析:题解:rust:go:c++:python:java: 92. 反转链表 II: 给你单链表的头指针 head 和两个整数 left 和 rig...
-
c++ 算法 前缀和 4元组 合并循环 【动态规划】LeetCode2552:优化了6版的1324模式
本文涉及的基础知识点 C++算法:前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 动态规划 本题其它解法 C++前缀和算法的应用:统计上升四元组 类似题解法 包括题目及代码C++二分查找算法:132 模式解法...
-
c++ 算法 【前缀和】【单调栈】LeetCode2281:巫师的总力量和
作者推荐 map|动态规划|单调栈|LeetCode975:奇偶跳 本文涉及的基础知识点 单调栈分类、封装和总结 C++算法:前缀和、前缀乘积、前缀异或的原理、源码及测试用例 包括课程视频 题目 作为国王的统治者,你有一支巫...
-
算法 职场和发展 数据分析 数据库 大数据 单挑力扣(LeetCode)SQL题:1501. 可以放心投资的国家(难度:中等)
相信很多学习SQL的小伙伴都面临这样的困境,学习完书本上的SQL基础知识后,一方面想测试下自己的水平;另一方面想进一步提升,却不知道方法。 其实,对于技能型知识,我的观点一贯都是:多练习、多实践。正所谓实践出真知,学完书本的...
-
算法 数据结构 (数组) 941. 有效的山脉数组 ——【Leetcode每日一题】
❓941. 有效的山脉数组 难度:简单 给定一个整数数组 arr,如果它是有效的山脉数组就返回 true,否则返回 false。 让我们回顾一下,如果 arr 满足下述条件,那么它是一个山脉数组: arr.length ˃=...
-
leetcode 算法 数据结构 【力扣题解】P145-二叉树的后序遍历-Java题解
博客主页:@花无缺 欢迎 点赞 收藏⭐ 留言 加关注✅! 本文由 花无缺 原创 收录于专栏 【力扣题解】 文章目录 【力扣题解】P145-二叉树的后序遍历-Java题解题目描述题解总结 【力扣题解】P...
-
算法 职场和发展 LeetCode-654. 最大二叉树【栈 树 数组 分治 二叉树 单调栈】
LeetCode-654. 最大二叉树【栈 树 数组 分治 二叉树 单调栈】 题目描述:解题思路一:递归,这个问题的难点在于如何找到每个子数组的最大值。此处用的是暴力查找最大值,然后递归构建左右子树。解题思路二:单调栈,显...
-
算法 动态规划 LeetCode 每日一题 2023/6/12-2023/6/18
记录了初步解题思路 以及本地实现代码;并不一定为最优 也希望大家能一起探讨 一起进步 目录 6/12 1483. 树节点的第 K 个祖先6/13 2475. 数组中不等三元组的数目6/14 1375. 二进制字符串前缀一...
-
golang 数据结构 后端 算法leetcode|54. 螺旋矩阵(rust重拳出击)
文章目录 54. 螺旋矩阵:样例 1:样例 2:提示: 分析:题解:rust:go:c++:python:java:每次循环移动一步:每次循环完成一个顺时针: 54. 螺旋矩阵: 给你一个 m 行 n 列的矩阵 mat...
-
leetcode 算法 数据结构 【二叉搜索树】BST相关题目
BST相关题目 二叉搜索树中的众树二叉搜索树节点最小距离两数之和 IV - 输入二叉搜索树总结 二叉搜索树中的众树 501.二叉搜索树中的众树 解题思路:中序遍历二叉搜索树,使得结果集是有序的,过程中将众数个数保存下来...
-
双指针 Java【手撕滑动窗口】LeetCode 438. “字符串中所有异位词“, 图文详解思路分析 + 代码
文章目录 前言一、字符串中所有异位词1, 题目2, 思路分析2.1, 引入哈希表找出异位词2.2, 引入变量记录"有效字符的个数"2.3, left 右移维护窗口2.4, 总结核心步骤 3, 代码 前言 各位读者好...
-
算法 数据结构 java python LeetCode 150:逆波兰表达式求值
一、题目描述 给你一个字符串数组 tokens ,表示一个根据 逆波兰表示法 表示的算术表达式。 请你计算该表达式。返回一个表示表达式值的整数。 注意: 有效的算符为 '+'、'-'、'*' 和 '/' 。每个操作数(运算对...
-
算法 数据结构 python b树 广度优先 深度优先 普通二叉树和右倾斜二叉树--LeetCode 111题《Minimum Depth of Binary Tree》
本文将以解释计算二叉树的最小深度的思路为例,致力于用简洁易懂的语言详细描述普通二叉树和右倾斜二叉树在计算最小深度时的区别。通过跟随作者了解右倾斜二叉树的概念以及其最小深度计算过程,读者也将对左倾斜二叉树有更深入的了解。这将为...
-
c++ 刷题 leetcode 125.验证回文串
⭐️ 题目描述 leetcode链接:https://leetcode.cn/problems/valid-palindrome/ 思路: 这道题只判断字符串中的字母与数字是否是回文。虽然小写大写字母可以互相转换,但是里...
-
算法 【经验总结】LeetCode中链表类题目经验总结十条
文章目录 前言干货经验汇总第一梯队第二梯队 力扣代表性链表题目推荐 前言 链表是以节点(node)存储的链式存储结构,一个node包含一个data域(存放数据)和一个next域(存放下一个node的指针),链表的各个节...
-
深度优先 算法 Leetcode.463 岛屿的周长
题目链接 Leetcode.463 岛屿的周长 easy 题目描述 给定一个 row x col的二维网格地图 grid,其中:grid[i][j] = 1表示陆地, grid[i][j] = 0表示水域。 网格中的格子...
-
算法 图灵日记之Leetcode链表中间结点&&牛客链表中倒数第k个结点&&Leetcode合并两个有序链表&&leetcode反转链表
题目 链表的中间结点原题入口题目内容题目解析思路一代码实现一思路二代码实现二 链表中倒数第k个结点题目链接题目内容思路代码实现 合并两个有序链表原题入口题目内容思路代码实现 反转链表题目传送入口题目内容思路一代...
-
leetcode 算法 Day02 977.有序数组的平方 209.长度最小的子数组 59.螺旋矩阵II
文章目录 977. 有序数组的平方双指针法 209. 长度最小的子数组滑动窗口 59. 螺旋矩阵II 977. 有序数组的平方 双指针法 时间复杂度O(n 209. 长度最小的子数组 滑动窗口 时间复杂度:O(n...
-
算法 职场和发展 【Leetcode合集】1457. 二叉树中的伪回文路径
1457. 二叉树中的伪回文路径 1457. 二叉树中的伪回文路径 代码仓库地址: https://github.com/slience-me/Leetcode 个人博客 :https://slienceme.xyz 给你...
-
算法 leetcode 394. 字符串解码
感觉糊里糊涂的AC了,感觉还要二刷。。。 题目链接leetcode 394 1.题目 给定一个经过编码的字符串,返回它解码后的字符串。 编码规则为: k[encoded_string],表示其中方括号内部的 encoded_...
-
算法 职场和发展 Day35| Leetcode 860. 柠檬水找零 Leetcode 406. 根据身高重建队列 Leetcode 452. 用最少数量的箭引爆气球
Leetcode 860. 柠檬水找零 题目链接 860 柠檬水找零 本题目比较简单,我一开始并没有看出有需要贪心的地方,看了一下解析: 局部最优:遇到账单20,优先消耗美元10,完成本次找零。全局最优:完成全部账单的找零...
-
算法 c语言 c++ 【LeetCode】【数据结构】单链表OJ常见题型(二)
樊梓慕:个人主页 个人专栏:《C语言》《数据结构》《蓝桥杯试题》《LeetCode刷题笔记》 每一个不曾起舞的日子,都是对生命的辜负 目录 前言: 【LeetCode】面试题02.04. 分割链表 【LeetCod...
-
c++ leetcode 算法(1)——双指针
双指针 我们常见的双指针的形式有两种,一种是对撞指针,一种是快慢指针! 对撞指针:一般用于顺序结构中,也称左右指针。 1、对撞指针从两端向中间移动。一个指针从最左端开始,另一个从最右端开始,然后逐渐向中间逼近。 2、对...