
算法刷题
风老魔
这个作者很懒,什么都没留下…
展开
-
【算法刷题】滑动窗口-长度最小的子数组
给定一个含有 `n` 个正整数的数组和一个正整数 `target` **。**原创 2023-04-13 21:22:36 · 75 阅读 · 0 评论 -
【算法刷题】堆-前 k 个高频单词
给定一个单词列表 words 和一个整数 k ,返回前 k 个出现次数最多的单词原创 2023-04-10 10:00:00 · 135 阅读 · 0 评论 -
【算法刷题】堆-数组中第 K 个最大元素
给定整数数组 nums 和整数 k,请返回数组中第 k 个最大的元素原创 2023-04-10 08:00:00 · 90 阅读 · 0 评论 -
回溯之括号生成
数字 n 代表生成括号的对数,请你设计一个函数,用于能够生成所有可能的并且 有效的 括号组合原创 2023-04-09 08:15:00 · 94 阅读 · 0 评论 -
回溯之子集
给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的子集(幂集)原创 2023-04-09 09:00:00 · 78 阅读 · 0 评论 -
回溯算法之全排列
回溯算法之全排列原创 2023-04-08 18:24:27 · 236 阅读 · 0 评论 -
回溯算法之全排列
回溯可以理解是暴力递归 + 剪枝,**解决一个回溯问题,实际上就是一个决策树的遍历过程**原创 2023-04-08 18:15:38 · 89 阅读 · 0 评论 -
BFS广度优先搜索之钥匙和房间
有 n 个房间,房间按从 0 到 n - 1 编号。最初,除 0 号房间外的其余所有房间都被锁住。你的目标是进入所有的房间。然而,你不能在没有获得钥匙的时候进入锁住的房间。原创 2023-04-07 11:30:00 · 340 阅读 · 0 评论 -
BFS广度优先之打开转盘锁
你有一个带有四个圆形拨轮的转盘锁。每个拨轮都有10个数字原创 2023-04-07 09:45:00 · 156 阅读 · 0 评论 -
BFS广度优先之 二叉树的最小深度
【代码】BFS广度优先之 二叉树的最小深度。原创 2023-04-06 22:52:44 · 224 阅读 · 0 评论 -
BFS广度优先搜索之算法框架
用来搜索 **最短路径** 比较合适,如:求二叉树最小深度、最少步数、最少交换次数,一般与 **队列** 搭配使用,空间复杂度比 `DFS` 大很多原创 2023-04-06 22:54:06 · 353 阅读 · 0 评论 -
滑动窗口之长度最小的子数组
给定一个含有 `n` 个正整数的数组和一个正整数 `target` **。**原创 2023-04-05 11:45:00 · 85 阅读 · 0 评论 -
算法:【烧绳计时】
题干:烧一根不均匀的绳要用一个小时,从头烧到尾总共需要1个小时.现在有若干条材质相同的绳子,问如何用烧绳的方法来计时一个小时十五分钟呢?加起来总共=30+15+30=75分钟=一个小时十五分钟。原创 2023-04-05 09:30:00 · 203 阅读 · 0 评论 -
算法:【芯片检测】
把第一块芯片与其它逐一对比,看看其它芯片对第一块芯片给出的是好是坏,如果给出是好的过半,那么说明这是好芯片,完毕。如果给出的是坏的过半,说明第一块芯片是坏的,那么就要在那些在给出第一块芯片是坏的芯片中,重复上述步骤,直到找到好的芯片为止。其中:好芯片和其它芯片比较时,能正确给出另一块芯片是好还是坏;坏芯片和其它芯片比较时,会随机的给出好或是坏。因为如果每次比较的两块芯片都能够排除一半的坏芯片,那么在最坏情况下,也只需要。由于每次比较都可以排除一半的坏芯片,所以最坏情况下,二分法只需要比较。原创 2023-04-04 08:00:00 · 815 阅读 · 0 评论 -
算法:【池塘取水】
假设有一个池塘,里面有无穷多的水,现有两个空水壶,容积分别为5升和6升,如何只用这2个水壶从池塘里取得3升的水原创 2023-04-04 08:30:00 · 266 阅读 · 1 评论 -
链表刷题之反转链表
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LiMqlg2C-1680442657005)(https://tva1.sinaimg.cn/large/008eGmZEly1gnrf1oboupg30gy0c44qp.gif)],请你反转链表,并返回反转后的链表。原创 2023-04-03 12:15:00 · 90 阅读 · 0 评论 -
链表刷题之移除链表元素
链表的所有值都是 唯一的,并且保证给定的节点 node 不是链表中的最后一个节点。给你一个需要删除的节点 node。你将 无法访问 第一个节点 head。注意,删除节点并不是指从内存中删除它。有一个单链表的 head,我们想删除它其中的一个节点 node。原创 2023-04-03 08:00:00 · 116 阅读 · 0 评论 -
链表刷题之合并两个有序链表
参考:https://blog.youkuaiyun.com/weixin_43466639/article/details/124000412。新链表是通过拼接给定的两个链表的所有节点组成的。哨兵节点的作用是方便得到最后的链表,即一个虚拟的头节点。将两个升序链表合并为一个新的。原创 2023-04-02 21:39:35 · 81 阅读 · 0 评论 -
Python 实现单链表
单链表又称单向链表,顾名思义它只有一个方向。原创 2023-04-02 20:59:50 · 575 阅读 · 0 评论 -
算法刷题之堆
算法刷题之堆原创 2023-03-30 09:45:00 · 524 阅读 · 0 评论 -
动态规划之最长回文子串
解题思路:中心拓展法,从当前字符向两端进行拓展(两个指针背向移动),每个位置都判断下,以该位置为中心的回文串最长为多少,遍历一遍,保留最长的那个。原创 2023-03-30 09:15:00 · 99 阅读 · 0 评论 -
动态规划之最长回文子序列
给你一个字符串 s ,找出其中最长的回文子序列,并返回该序列的长度。原创 2023-03-29 10:30:00 · 118 阅读 · 0 评论 -
动态规划之最长公共子序列
【代码】动态规划之最长公共子序列。原创 2023-03-29 09:45:00 · 69 阅读 · 0 评论 -
动态规划之最长递增子序列
给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。原创 2023-03-28 11:00:00 · 151 阅读 · 0 评论 -
动态规划之最小路径和
给定一个包含非负整数的 m x n 网格 grid ,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小原创 2023-03-28 09:15:00 · 163 阅读 · 0 评论 -
动态规划之不同路径
动态规划不同路径原创 2023-03-27 21:12:06 · 359 阅读 · 0 评论 -
动态规划之爬楼梯
【代码】动态规划之爬楼梯。原创 2023-03-27 21:11:04 · 87 阅读 · 0 评论 -
LeetCode 刷题之 BFS 广度优先搜索【Python实现】
【代码】LeetCode 刷题之 BFS 广度优先搜索【Python实现】原创 2023-02-17 20:37:04 · 999 阅读 · 0 评论 -
LeetCode 刷题之字符串【Python实现】
题解二:哈希表存储字符个数 140 ms。题解二:自己实现去除空白、反转。原创 2023-02-17 20:35:48 · 310 阅读 · 0 评论 -
LeetCode 刷题之链表【Python实现】
将两个升序链表合并为一个新的链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。题解:哨兵节点的作用是方便得到最后的链表,即一个虚拟的头节点参考:https://blog.youkuaiyun.com/weixin_43466639/article/details/124000412。原创 2023-02-16 23:10:20 · 404 阅读 · 0 评论 -
算法之链表【Python实现】
单链表又称单向链表,顾名思义它只有一个方向。原创 2023-02-16 23:09:29 · 139 阅读 · 0 评论 -
LeetCode 刷题之回溯算法
回溯可以理解是暴力递归 + 剪枝,,大致需要分为以下三步。原创 2023-02-15 22:00:42 · 122 阅读 · 0 评论 -
LeetCode 刷题之队列
队列(queue)是只允许在一端进行插入操作,而在另一端进行删除操作的线性表。队列是一种先进先出的()的线性表,简称FIFO。允许插入的一端为队尾,允许删除的一端为队头。队列不允许在中间部位进行操作!假设队列是q=(a1,a2,……,an),那么a1就是队头元素,而an是队尾元素。这样我们就可以删除时,总是从a1开始,而插入时,总是在队列最后。这也比较符合我们通常生活中的习惯,排在第一个的优先出列,最后来的当然排在队伍最后。与栈一样,队列可以通过顺序表或链表来实现。原创 2023-02-15 21:57:47 · 485 阅读 · 0 评论 -
LeetCode 刷题之堆【Python版】
Python。原创 2023-02-14 22:34:08 · 408 阅读 · 0 评论 -
LeetCode 刷题之动态规划【Python版】
解题思路:中心拓展法,从当前字符向两端进行拓展(两个指针背向移动),每个位置都判断下,以该位置为中心的回文串最长为多少,遍历一遍,保留最长的那个。内最长回文子序列的长度,假设字符串 s 的长度为 n,则只有当。代表的是状态转移,它包括前面走过的路径之和,而。表示当前元素的递增子集个数。表示字符串 s 下标范围。题解二:(更容易理解)原创 2023-02-14 22:31:20 · 701 阅读 · 0 评论