算法
算法思路xxx
RioTian
这个作者很懒,什么都没留下…
展开
-
八皇后问题的两个高效的算法
八皇后问题的两个最高效的算法八皇后问题是一个经典的问题,在一个N*N的棋盘上放置N个皇后,每行一个并使其不能互相攻击(同一行、同一列、同一斜线上的皇后都会自动攻击)。一、 求解八皇后问题是算法中回溯法应用的一个经典案例 回溯算法也叫试探法,它是一种系统地搜索问题的解的方法。回溯算法的基本思想是:从一条路往前走,能进则进,不能进则退回来,换一条路再试。 在现实中,有很多问题往往...原创 2020-02-16 09:37:04 · 967 阅读 · 1 评论 -
动态规划-字符串的交错组成
字符串交错组成题目描述:对于三个字符串A,B,C。我们称C由A和B交错组成当且仅当C包含且仅包含A,B中所有字符,且对应的顺序不改变。请编写一个高效算法,判断C串是否由A和B交错组成。给定三个字符串A,B和C,及他们的长度。请返回一个bool值,代表C是否由A和B交错组成。保证三个串的长度均小于等于100。测试样例:"ABC",3,"12C",3,"A12BCC",6返回:true...原创 2020-02-14 15:14:32 · 173 阅读 · 0 评论 -
动态规划:字符串编辑距离
动态规划:字符串编辑距离问题描述有两个字符串A和B,现在将A经过三种变换可以得到B,即插入、删除和修改,这三种操作的代价分别为c0,c1和c2,问题就是A到B的变换所需要的最小代价是多少。思路典型的动态规划问题,娇哥曾经说过,字符串的问题大部分都是动态规划的问题,那么这个问题要怎么解决呢?动态规划问题首先定义状态,然后定义状态转移方程,然后确定初始状态和终止状态,然后就可以得到终止状态下的...原创 2020-02-14 15:02:49 · 242 阅读 · 0 评论 -
【LeetCode】152. 乘积最大子序列 结题报告 (C++)
【LeetCode】152. 乘积最大子序列 结题报告 (C++)原题地址传送门题目描述给定一个整数数组 nums ,找出一个序列中乘积最大的连续子序列(该序列至少包含一个数)。示例 1:输入: [2,3,-2,4]输出: 6解释: 子数组 [2,3] 有最大乘积 6。示例 2:输入: [-2,0,-1]输出: 0解释: 结果不能为 2, 因为 [-2,-1] 不是子数组...原创 2020-02-13 18:02:21 · 98 阅读 · 0 评论 -
动态规划入门练习题
动态规划入门一.动态规划需要弄清楚的四个方面1.确认原问题与子问题 2.确认状态 3.确认边界状态的值 4.确定状态转移方程。二.由易入难,做几道动态规划的题目这里是楼主学习DP时候练习的题目硬币找零题目描述给定需要找零的面值money和可以使用的硬币种类(这里假设每种硬币的数量有无限多种),求出用这些硬币找零所需要的最小硬币数。比如money = 11,硬币种类为[1,2,5],...原创 2020-02-12 20:47:10 · 308 阅读 · 0 评论