算法学习
文章平均质量分 72
Skyline-sjc
这个作者很懒,什么都没留下…
展开
-
2021-08-14 摩尔投票法
摩尔投票法题目分析摩尔投票法思路摩尔投票法适应的问题回到题目 题目 原题leetcode链接 分析 正常思路,排序后取中间数,考虑到排序算法时间复杂度为O(n*logn)。显然这不够优秀。 于是我们可以考虑摩尔投票法。 摩尔投票法思路 我们用原始的投票情况模拟,我们现在有ABC三个候选人 而8张选票分别是{A,B,C,B,C,A,A,A}。 摩尔投票法思路: 1、设置两个变量,res记录当前获胜者,count记录当前获胜者的相对选票 2、若当前获胜者和当前选票指向候选人相同,则count+1 3、若当前获原创 2021-08-14 20:50:46 · 172 阅读 · 4 评论 -
回溯算法(1)模板+组合问题+剪枝
组合问题与剪枝回溯?具体例子的分析回溯的剪枝操作 回溯? 回溯 重点在于回头。回溯算法本身改变不了暴力搜索的本质。简单一点说:从一条路往前走,能进则进,不能进则退回来,换一条路再试。 回溯算法主要应用于: 组合问题:给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。(不考虑顺序,即{1,2} {2,1}认为同一种可能) 分割问题:给定一个字符串,如何分割回文字符串 排列问题:组合问题的拓展,即考虑顺序 棋盘问题:n皇后(以八皇后最为经典) 以组合问题为例,n=4,k=2为例。原创 2021-08-05 22:12:31 · 294 阅读 · 6 评论