![](https://img-blog.csdnimg.cn/13b269b3e3234dd3aebcc303cef1e5db.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
算法学习
文章平均质量分 66
算法!!!
笨笨在努力
总要热爱点儿什么
展开
-
错排问题Dn = (n - 1) * (Dn-1 + Dn-2)
错排问题原创 2022-06-12 10:54:04 · 909 阅读 · 1 评论 -
排列组合问题
好吧,又回来回溯算法了,yes,之前写过两篇自学的回溯算法,然鹅,如今再碰到基本一模一样的题题,还是不会做啊啊啊,好吧,那就从头来过,再次肝几道简单的回溯题。1.二叉树中和为某一值的路径,原题链接奉上:二叉树中和为某一值的路径(二)_牛客题霸_牛客网 (nowcoder.com)解法:还是回溯回溯回溯!!!待选集合list先add节点值,然后更新target值 判定现有list是否满足条件,如若满足,将待选集合add进总结果集中(这里add的时候注意,一定要是深拷贝,重新new一原创 2022-04-08 17:09:18 · 223 阅读 · 3 评论 -
回溯(二)——排列 Leetcode46题
题目链接:46. 全排列 - 力扣(LeetCode) (leetcode-cn.com)题目描述:给定一个不含重复数字的数组 nums ,返回其 所有可能的全排列 。你可以 按任意顺序 返回答案。算法分析:回溯问题模板基本一致,这里的排列问题与上一篇的组合问题,也只是多了一个用于标记元素是否被使用过了的boolean数组,在每一次组合中,只要未被使用的才添加,并在添加后标记为true,回溯后再还原代码实现://全排列//回溯算法public class Leetc原创 2022-02-16 19:59:45 · 511 阅读 · 1 评论 -
初识回溯算法——(一)组合问题
回溯算法:回溯法是一种选优搜索法,按选优条件向前搜索,以达到目标。但当探索到某一步时,发现原先选择并不优或达不到目标,就退回一步重新选择,这种走不通就退回再走的技术为回溯法。回溯法并不高效,顶多可以剪枝优化,本质仍是穷举,是基于递归实现的。回溯法一般可以解决以下问题: 组合问题:N个数里面按一定规则找出k个数的集合 排列问题:N个数按一定规则全排列,有几种排列方式 切割问题:一个字符串按一定规则有几种切割方式 子集问题:一个N个数的集合里有多少符合条件的子原创 2022-02-14 21:47:17 · 752 阅读 · 18 评论