Archive: 2020/9

贪心-分拆问题

摘要: 一些用贪心解决的分拆类问题, 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在文章 分拆类问题汇总 中我们总结了分拆类问题。这类问题没有固定的算法,要根据具体的问题看,本文我们看一下适用贪心

贪心:不限操作方式的重排问题

摘要: 几个用贪心解决的重排问题场景 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 对于一个数组来说,对其元素重新排序是最重要的操作。如果排序的依据就是从小到大,那么就是常规的排序算法。还有很多重排

子序列匹配

摘要: 子序列匹配问题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在文章 字符串精确匹配 中我们学习了字符串精确匹配的问题,本文我们看一下子序列匹配问题,涉及到贪心、动态规划、序列自动机等算法。

贪心:构造性问题

摘要: 基于贪心的构造问题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 构造是算法中广泛使用的一类技巧。其中贪心地构造是比较考验灵感的问题,没有定式化的方法论。本文整理了一些这类问题,共 11 题

贪心-删数,拼数,选数,改数

摘要: 贪心算法解决数字构造问题:删数、拼数、选数、改数 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文罗列一下力扣上的一大类问题,也就是贪心算法解决的数字构造问题,包括删数、拼数、选数、改数等

力扣23-合并K个升序链表

摘要: 合并 K 个升序链表,堆与分治 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 今天我们继续看一道经典题(陈题),leetcode第23题,合并 K 个升序链表。 本题有两个主流解法: 算法

【二分难题】力扣4-寻找两个正序数组的中位数

摘要: 各种二分 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文看一个比较难的二分的问题。在两个有序数组中找中位数。可以基于两个数组有序的性质直接在整个区间范围二分。也可以对中位数的值进行值域二

python虚拟机相关资源

摘要: 本文介绍一些 Python 虚拟机相关的资料 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 《Python源码剖析》 2008 《Python3源码剖析》开源电子书项目 https://f

【STL】字典序比较 lexicographical_compare

摘要: 本文介绍在 C++ STL 中的字典序比较方法 lexicographical_compare 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文介绍在 C++ STL 中的字典序比较方法

奇数位置元素排在偶数位置元素之前

摘要: 线性结构上的一种常见操作 【对数据分析、人工智能、金融科技、风控服务感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:潮汐朝夕我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们来看一个在线性结构上非常常见的操作,就是将奇数位置的元素排在偶数位置的元素之前。 首先我们考

【分治难题】力扣932-漂亮数组

摘要: 一个 O(N) 分解 O(1) 合并的分治法 【对数据分析、人工智能、金融科技、风控服务感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:潮汐朝夕我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,本文我们看一个非常漂亮的分治法。此前我们了解过一些分治法解决的问题,基本

【C++17】string_view

摘要: 本文介绍 C++17 中的一个字符串相关的新特性 string_view,主要参考《C++17 STL Cookbook》$7-3 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文介绍 C

逆向思维

摘要: 本文梳理了 leetcode 上用逆向思维的思想解决的问题。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文梳理力扣上 9 道用逆向思维的思想解决的问题,总览如下: 1558. 得到目

【设计难题】力扣895-最大频率栈

摘要: 基于链表+哈希表解决与频数相关的设计问题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,本文我们来看一个设计问题。需求与频数相关,具体地就是在栈的基础上,push 的操作不变,pop

leetcode模拟问题汇总

摘要: 模拟类的题目总结 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 数组或字符串上的模拟(1) 转换 38. 外观数列 273. 整数转换英文表示 1089. 复写零 (2) 其它 75

《概率与计算》

摘要: 《概率与计算》这本书 【对数据分析、人工智能、金融科技、风控服务感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:潮汐朝夕我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 这是一个挖坑贴,随机算法是大数据算法中的重要的算法,《概率与计算》是讲随机算法的书中风评比较好的,此外还

【贪心难题】力扣1585-检查字符串是否可以通过排序子字符串得到另一个字符串

摘要: 贪心 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,本文我们来看一个贪心的问题。这是第 206 场周赛 D 题,是限制操作方式的数组重排的场景。 $1 题目 1585. 检查字符串是

k短路问题:AStar启发式搜索

摘要: AStar 算法经典问题:k短路 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 给定一个有向图,求 S 到 T 的最短路径长度是图算法中的基本问题,算法很多,参考文章 带权图最短路径算法与实

双向搜索

摘要: 从起点和终点同时一层一层地搜索。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在一些从起点向终点搜索的问题中,如果采用 BFS 的方式一层一层搜的话,层数越多,则每一层要搜索的就越多。 假

【搜索难题】力扣679-24点游戏

摘要: 最经典的 24 点判定问题。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,1024 快到了,各公司的程序员的活动也都出来了,力扣也不例外,出了一个参与感还挺强的活动。不过活动说明可

Trie题目汇总

摘要: Trie 的题目总结 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings Trie 基本功能的思想和实现参考文章:Trie 题目 备注 208. 实现 Trie (前缀树)

01Trie

摘要: 01Trie 的实现,附代码模板和应用 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在文章 Trie 中我们了解了 Trie 的原理与实现。如果 Trie 的节点只含有 0, 1 这两种值

【搜索难题】力扣282-给表达式添加运算符

摘要: 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文看一个复杂的搜索题。亮点在于在 DFS 的过程中维护复杂的状态信息:用类似单调栈的逻辑维护表达式符号和值。 $1 题目 282. 给表达式

拓扑排序的存在性和唯一性;建图的CornerCase

摘要: 建图的各种 Corner Case 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们通过一个拓扑排序的应用问题,看一下在建图时可能遇到的各种 Corner Case。此外本题还有一个值

迭代加深

摘要: 迭代加深的思想与例题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings $1 迭代加深的思想和算法DFS 回顾DFS 的逻辑是每次选定一个分支,不断深入,直到达到递归边界才回溯。这种方法退域很多

【搜索难题】力扣1263-推箱子

摘要: 搜索难题,推箱子问题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们看一个很有挑战性的搜索问题,算法的框架是以 BFS 为核心的最短路径。但是有两个难点: 在推 BFS 的过程中,

双端队列BFS

摘要: 基于双端队列的 BFS 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在文章 带权图最短路径 中我们全面学习了带权图最短路径的算法,其中 BFS 是一类非常重要的算法。但是常规的 BFS 只

minimax算法初探以及若干例子

摘要: minimax 算法简介 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,本文我们来聊一下博弈问题。此前我们通过动态规划解决过不少博弈问题,参考文章 博弈DP,也解决过非常困难的问题:

离散化

摘要: 离散化的原理和代码模板 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 离散化属于排序算法的应用,目的是把无穷大集合中的若干元素映射为有限集合,以便于统计。 很多时候,问题的范围是定义在整数集

【搜索难题】力扣913-猫和老鼠

摘要: 本文详细拆解 leetcode 913-猫和老鼠,主要涉及对抗搜索与minimax、记忆化搜索、染色 BFS 等算法。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 今天分享一个对抗搜索的问

记录搜索路径;枚举点找边和枚举边找点

摘要: 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文通过 126.单词接龙 II 主要介绍在搜索过程中如何记录搜索路径。因为有时候光搜到了还不行,还需要给出搜索到的具体路径。此外本题的枚举点

隐式图搜索的概念与例子

摘要: 隐式图搜索的概念,以单词接龙为例 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们首先介绍隐式图搜索的相关概念,然后解决一个非常经典的用 BFS 解决的隐式图搜索问题,用建图和不建图的

【搜索难题】力扣1036-逃离大迷宫

摘要: 本文详细拆解 leetcode 1036-逃离大迷宫,有带步数上限的 BFS 和二维离散化两种方法 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 今天我们看一个迷宫上的问题,迷宫是非常大的一

【搜索难题】力扣778-水位上升的泳池中游泳

摘要: 一个搜索题,可以用优先级队列 BFS 或者值域二分解决 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们看一个搜索题。有两个解法,一个是值域二分+DFS、另一个是优先级队列 BFS,都

遍历序的概念与性质

摘要: 图的几种遍历序及其应用 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 对于一棵树,我们知道从根节点出发有 DFS 和 BFS 两类方法可以把树种的节点遍历一遍。如果是二叉树的话,基于 DFS

力扣272-最接近的二叉搜索树值 II

摘要: 力扣 272:二叉查找树的操作,中序遍历、查找、前驱后继 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 各位好,本文我们看一个二叉查找树的问题,本题有两种方法,涉及到了二叉查找树的常见操作:

二部图判定定理与算法

摘要: 本文介绍二部图判定定理与二部图判定算法 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在文章 图论1-基本概念 中我了解了二部图的定义和一些性质。 本文我们以力扣第 785 题为模板题,看一

多重集的组合数

摘要: 多重集合的组合,推导与计算方法 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在文章 组合数学1-排列组合 中我们详细梳理了组合数学的基本模型,以及排列组合的相关公式。进一步在文章 组合数

容斥计数:N个集合的情况

摘要: 容斥计数的例题,可以作为代码模板 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 对于一些计数或者概率类型的动态规划问题,有时候答案是要求恰好满足某条件时的答案,但是难以限制成恰好的情况,可以

01分数规划

摘要: 01分数规划,算法与例题 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 01分数规划模型问题01分数规划是指,给定整数 $a_{1}, a_{2}, a_{3}, …, a_{n}$,以及

负环

摘要: 负环 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 负环在图论中,如果一条边的权值是负数,则为负权,如果图中存在一个环,还上各个边的权值之和为负数,则为负环。 在 带权图最短路径 中,各种单

用字典树处理字典序的问题

摘要: 几个字符串上的字典序问题,用字典树可以解决 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在文章 字典序法枚举排列 中,我们了解到对于一个排列来说,可以用字典序来定义这些排列的大小,进一步可

素数筛-对阶乘分解质因数

摘要: 如何对阶乘进行分解质因数 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我看一个素数筛的应用问题:对阶乘分解质因数,以及后续应用,关于素数筛的算法和代码参考 素数筛。 对阶乘分解质因数给

支持公式

摘要: 初探在 Hexo 文章支持 LaTeX 的方法。 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 卸载原来的 hexo 引擎: 1npm uninstall --save hexo-

组合数学5-群论

摘要: 群、置换群、共轭类、对换、等价类、Burnside引理 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在 组合数学1-排列组合 中我们详细梳理了组合数学的基本模型以及相关公式;在 组合数学2

超级源

摘要: 超级源的处理技巧 【对数据分析、人工智能、金融科技、风控服务感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:潮汐朝夕我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 超级源和超级汇是图论问题中的一个处理技巧。本文我们简要介绍一下超级源和超级汇的思想,然后解决力扣 1168。

在有向图中判定环

摘要: 有向图的环 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 在文章 在无向图中判定环 中,我们研究了无向图判定环的问题,本文以 207. 课程表 为模板题来看一下如何判断给定的有向图是否含有环

支持目录

摘要: 初探在 Hexo 文章的前面自动生成目录的问题,尝试 hexo-toc,没有成功 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 打开一篇文章的时候,能不能根据 markdown

在无向图中判定环

摘要: 无向图上的环的判定 【对算法,数学,计算机感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:算法题刷刷我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 本文我们系统梳理一下判定无向图中是否存在环的问题。首先介绍四种算法,分别为 BFS、DFS、并查集、拓扑排序,均为图上的主流

禁止爬虫跟踪外链

摘要: 在 Hexo 中设置禁止爬虫跟踪的外链 【对数据分析、人工智能、金融科技、风控服务感兴趣的同学,欢迎关注我哈,阅读更多原创文章】我的网站:潮汐朝夕的生活实验室我的公众号:潮汐朝夕我的知乎:潮汐朝夕我的github:FennelDumplings我的leetcode:FennelDumplings 搜索引擎的蜘蛛来爬取文章内容时,如果你的文章中有外部链接,它就会到外链的站点去爬取