算法专栏
文章平均质量分 79
Moelimoe
Every single day that makes no difference is a betrayal to my life.
展开
-
面试题:N皇后问题,思路和python解题笔记
n皇后问题算法解析,python问题描述n皇后问题,在n×n的棋盘上,解出n个皇后所有不能互相攻击的摆法,皇后在数组中用“Q”表示,空地用“.”表示返回的数据结构格式要求:[[“.Q…”,“…Q”,“Q…”,“…Q.”],[“…Q.”,“Q…”,“…Q”,“.Q…”]]注:皇后在棋盘中的攻击范围是横、竖、左和右中位线的四个方向解题思路分析红色划线部分为皇后的攻击范围,不可以放另外一个皇后横竖方向的限制很容易:只要与当前Q的行和列相同的index的部分全部禁止即可关键的难点是如何处理左右斜原创 2022-04-30 22:16:39 · 1332 阅读 · 0 评论 -
动态规划思路和Python解决零钱兑换问题和最大乘积子序列的乘积的问题
动态规划是一种主要用来优化朴素递归的方法,每当输入不同值调用递归函数出现大量重复的(子)输入和调用(返回结果)时,就可以考虑使用动态递归的方式来优化复杂度。动态规划的主要思想是存储子问题的结果,以便于在接下来可能出现的的重复子问题中直接使用已有的结果,这样子便可以将时间复杂度从指数级别降低到多项式(nlogn…)或线性级别,是一种以空间换时间的算法。以一个简单的斐波那契数列的为示例:几个问题的示例不同路径问题,DP解法:零钱兑换问题,DP解法求最大乘积子序列(的乘积),DP解法...原创 2021-12-27 23:03:47 · 805 阅读 · 0 评论