![](https://img-blog.csdnimg.cn/20190927151101105.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据结构-算法
文章平均质量分 59
数据结构-算法
天下·第二
这个作者很懒,什么都没留下…
展开
-
【深度优先搜索】和【广度优先搜索】的区别介绍
深度优先搜索(Depth-First Search,DFS)和广度优先搜索(Breadth-First Search,BFS)是两种常见的图搜索算法。它们的主要区别在于搜索的方式和顺序不同。原创 2023-11-03 09:10:40 · 1744 阅读 · 0 评论 -
LeetCode - 64. 最小路径和【经典题解 - 矩阵数组动态规划】
python 矩阵数组动态规划原创 2023-07-13 22:00:00 · 908 阅读 · 0 评论 -
LeetCode - 424. 替换后的最长重复字符【经典题解 - 贪心滑动窗口算法】
python 滑动窗口贪心算法原创 2023-07-12 11:38:34 · 366 阅读 · 0 评论 -
LeetCode - 78. 子集&90. 子集II【经典题解 - 回溯算法】
python 回溯算法原创 2023-07-10 17:15:47 · 323 阅读 · 0 评论 -
LeetCode - 39. 组合总和【经典题解 - 回溯算法】
python 经典回溯算法原创 2023-07-10 22:00:00 · 416 阅读 · 0 评论 -
Python - 经典排序算法【冒泡、选择、插入、排序】
Python - 经典排序算法【冒泡、选择、插入、排序】原创 2023-06-01 11:24:21 · 152 阅读 · 0 评论 -
python-剑指 Offer 42. 连续子数组的最大和【动态规划经典题解】
算法-动态规划原创 2023-02-23 15:25:26 · 730 阅读 · 0 评论 -
python-leetcode-面试题57 - II. 和为s的连续正数序列
题目描述:输入一个正整数 target ,输出所有和为 target 的连续正整数序列(至少含有两个数)。序列内的数字由小到大排列,不同序列按照首个数字从小到大排列。注意是连续的数组,本人就看错是不连续的,想了半天想不出来。。。示例 1:输入:target = 9输出:[[2,3,4],[4,5]]示例 2:输入:target = 15输出:[[1,2,3,4,5],[4,5...原创 2020-03-24 22:53:02 · 434 阅读 · 0 评论 -
python-leetcode-409. 最长回文串
题目描述给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串。在构造过程中,请注意区分大小写。比如 “Aa” 不能当做一个回文字符串。注意:假设字符串的长度不会超过 1010。示例 1:输入:"abccccdd"输出:7解释:我们可以构造的最长的回文串是"dccaccd", 它的长度是 7。解法一:解题思路:凡是偶数个全加上,奇数那就加上最...原创 2020-03-23 22:15:49 · 897 阅读 · 0 评论 -
python-leetcode-121. 买卖股票的最佳时机
题目描述给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。如果你最多只允许完成一笔交易(即买入和卖出一支股票一次),设计一个算法来计算你所能获取的最大利润。注意:你不能在买入股票前卖出股票。示例 1:输入: [7,1,5,3,6,4]输出: 5解释: 在第 2 天(股票价格 = 1)的时候买入,在第 5 天(股票价格 = 6)的时候卖出,最大利润 = 6-1 = 5 。...原创 2020-03-19 22:58:16 · 270 阅读 · 0 评论 -
python-leetcode-面试题62. 圆圈中最后剩下的数字
题目描述:0,1,n-1这n个数字排成一个圆圈,从数字0开始,每次从这个圆圈里删除第m个数字。求出这个圆圈里剩下的最后一个数字。例如,0、1、2、3、4这5个数字组成一个圆圈,从数字0开始每次删除第3个数字,则删除的前4个数字依次是2、0、4、1,因此最后剩下的数字是3。示例 1:输入: n = 5, m = 3输出: 3示例 2:输入: n = 10, m = 17输出: 2...原创 2020-03-17 23:54:15 · 547 阅读 · 0 评论 -
python-leetcode-17.10. 主要元素
题目描述:如果数组中多一半的数都是同一个,则称之为主要元素。给定一个整数数组,找到它的主要元素。若没有,返回-1。示例 1:输入:[1,2,5,9,5,9,5,5,5]输出:5 示例 2:输入:[3,2]输出:-1解法一:class Solution(object): def majorityElement(self, nums): """ ...原创 2020-03-10 23:35:15 · 346 阅读 · 0 评论 -
python-leetcode-860. 柠檬水找零(题解)
题目描述:在柠檬水摊上,每一杯柠檬水的售价为 5 美元。顾客排队购买你的产品,(按账单 bills 支付的顺序)一次购买一杯。每位顾客只买一杯柠檬水,然后向你付 5 美元、10 美元或 20 美元。你必须给每个顾客正确找零,也就是说净交易是每位顾客向你支付 5 美元。注意,一开始你手头没有任何零钱。如果你能给每位顾客正确找零,返回 true ,否则返回 false 。示例 1:输...原创 2020-01-03 00:04:45 · 413 阅读 · 0 评论 -
python-leetcode-447. 回旋镖的数量(题解)
题目描述:给定平面上 n 对不同的点,“回旋镖” 是由点表示的元组 (i, j, k) ,其中 i 和 j 之间的距离和 i 和 k 之间的距离相等(需要考虑元组的顺序)。找到所有回旋镖的数量。你可以假设 n 最大为 500,所有点的坐标在闭区间 [-10000, 10000] 中。示例:输入:[[0,0],[1,0],[2,0]]输出:2解释:两个回旋镖为 [[1,0],...原创 2019-12-08 23:34:31 · 397 阅读 · 0 评论 -
python-leetcode-27. 移除元素
题目描述给定一个数组 nums 和一个值 val,你需要原地移除所有数值等于 val 的元素,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。元素的顺序可以改变。你不需要考虑数组中超出新长度后面的元素。示例 1:给定 nums = [3,2,2,3], val = 3,函数应该返回新的长度 2, 并且 nums 中的前两...原创 2019-11-26 23:54:04 · 288 阅读 · 0 评论 -
python-leetcode-1089. 复写零
题目描述:给你一个长度固定的整数数组 arr,请你将该数组中出现的每个零都复写一遍,并将其余的元素向右平移。注意:请不要在超过该数组长度的位置写入元素。要求:请对输入的数组 就地 进行上述修改,不要从函数返回任何东西。示例 1:输入:[1,0,2,3,0,4,5,0]输出:null解释:调用函数后,输入的数组将被修改为:[1,0,0,2,3,0,0,4]示例 2:输入:[1,2,...原创 2019-11-22 23:23:27 · 274 阅读 · 0 评论 -
python-leetcode-181. 超过经理收入的员工
题目描述Employee 表包含所有员工,他们的经理也属于员工。每个员工都有一个 Id,此外还有一列对应员工的经理的 Id。+----+-------+--------+-----------+| Id | Name | Salary | ManagerId |+----+-------+--------+-----------+| 1 | Joe | 70000 | 3 ...原创 2019-09-05 14:45:54 · 345 阅读 · 0 评论 -
python-leetcode-728. 自除数
自除数 是指可以被它包含的每一位数除尽的数。例如,128 是一个自除数,因为 128 % 1 == 0,128 % 2 == 0,128 % 8 == 0。还有,自除数不允许包含 0 。给定上边界和下边界数字,输出一个列表,列表的元素是边界(含边界)内所有的自除数。示例 1:输入:上边界left = 1, 下边界right = 22输出: [1, 2, 3, 4, 5, 6, 7, ...原创 2019-07-18 18:43:02 · 948 阅读 · 0 评论