后端

图论(六)图的深度优先遍历DFS(非递归方式)

一、深度优先搜索 深度优先搜索是一个针对图和树的遍历算法。早在19世纪就被用于解决迷宫问题。 对于下面的树而言,DFS方法首先从根节点1开始,其搜索节点顺序是1,2,3,4,5,6,7,8(假定左分枝和右分枝中优先选择左分枝)。 DFS的非递归实现方式相比于BFS应该说大同小异,只是把queue换成了stack而已,stack具有后进先出LIFO(Last Input First O

程序员进阶之算法练习(六十二)AK练习

正文 题目1 题目链接 题目大意: 小明有a个1元硬币,b个2元硬币; 小明想要购买一个商品,并且不想找零; 现在小明想知道自己无法给到最低价格是多少; 比如说1个1元硬币,1个2元硬币,最低价格就是4元; 比如说0个1元硬币,1个2元硬币,最低价格就是1元;(不能找零) 输入: 第一行,整数𝑡 表示t个样例 𝑡 (1≤𝑡≤1e4) 每个样例一行,整数 𝑎𝑖 and 𝑏𝑖 (0≤𝑎𝑖,𝑏𝑖≤1e8

勾股定理

在这段时间,我们探索了勾股定理。那下面叫我来分享一下我们的探索历程。 我们会把勾股定理分成浪漫、精确、综合应用和未来发展四个板块。先来说一说,第一个板块——浪漫。我们也可以把它理解为对三角形的一个重温。 首先呢,我们要知道三角形的定义是什么?三条线段首尾相连围成的封闭图形叫三角形。那么,对于一个三角形会有哪些性质呢?当然有我们所知道的内角和为180度;三角形的一个外角度数等于这个角不相邻的两个角的

LeetCode75刷题记录

Level1 4/15 day1 2022-07-23 1.1480 一维数组的动态和,求一维数组各个位置的累加和 自己的解法: 每次 这其实是动态规划的思想,但我并没有意识到; class Solution: def runningSum(self, nums: List[int]) -> List[int]: result = [nums[0]]

[剑指Offer]21~25

学习使用工具 剑指Offer LeetCode的剑指Offer题库 剑指 Offer 21. 调整数组顺序使奇数位于偶数前面 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数在数组的前半部

杂草算法及其python实现过程

群智能算法来源于自然界中不同物种特有的生存法则,被广泛应用于复杂问题最优解计算当中。近年来,群智能研究领域出现诸多算法,如蚁群算法、粒子群算法(附完整代码)、蜂群算法、猫群算法、果蝇算法、杂草算法以及布谷鸟算法等。其中,杂草算法代码简单,易于实现,具有较强的自适应性和鲁棒性。 自然界中杂草生长简化流程 在一片荒芜的土壤的不同位置生长出了一些杂草 不同杂草在草原上的适应度不同,适应度高的个体生长旺盛