初识算法
文章平均质量分 56
qustJHJ
嵌入式学习,硬件电路学习
展开
-
分治、归并、快排
分治法步骤: 划分问题:把问题的实例划分成子问题 递归求解:递归解决子问题 合并问题:合并子问题的解得到原问题的解归并排序步骤: 划分问题:把序列分成元素个数尽量相等的两半 递归求解:把两半元素分别排序 合并问题:把两个有序表合成一个 快速排序步骤: 划分问题:把数组的各个元素重排后分成左右两部分,使得左边的任意元素都原创 2017-08-25 21:28:53 · 241 阅读 · 0 评论 -
最大公约数与最小公倍数
参考:http://blog.csdn.net/niushuai666/article/details/7278027 最大公约数 最大公约数(英语:greatest common divisor,gcd),指两个或多个整数共同具有的最大约数,记为 {\displaystyle (a_{1},a_{2},\dots ,a_{n})} {\displaystyle (a_{1},a_{2},\do原创 2017-08-29 23:04:46 · 515 阅读 · 0 评论 -
搜索策略及优化
暴力搜索 枚举所有可能的结果进行搜索,地毯式搜索。广度优先BFS 1.构造由根组成的队列Q 2.如果Q的第一个元素是目标节点,那么就停止搜索 3.从Q中删除元素x,并把x的所以子节点加入到队列的末尾 4.如果Q为空,则失败;否则返回2深度优先DFS 1.构造一个由根组成的栈S 2.如果栈顶元素是目标节点,就停止搜索 3.弹出栈顶元素,并把栈顶元素的所有子节点加入栈顶 4.如果S为空原创 2017-09-17 14:57:47 · 976 阅读 · 0 评论 -
初始贪心发
贪心法的基本思想 求解最优化问题的算法包含一系列步骤 每一步都有一组选择 作出在当前看来最好的选择 希望通过作出局部优化选择达到全局优化选择 贪心法不一定总产生最优解 贪心法能否产生最优解需要严格证明 贪心法产生最优解的条件 贪心选择性 优化子结构 贪心选择性 若一个优化问题的全局优化解可以通过局部优化选择原创 2017-09-10 15:23:56 · 588 阅读 · 0 评论 -
初识动态规划
动态规划通常用来解决最优化问题在这类问题中,我们通过做出一组选择来达到最优解。在做出每个选择的同时,通常会生成与原问题形式相同的子问题。当多于一个选择子集都生成相同的子问题时,动态规划技术通常就会很有效,其关键技术技术对每个这样的子问题都保存其解,当相同的子问题重复出现时即可避免重复计算。(空间换时间)**设计动态规划算法**1.刻画一个最优解的结构特征2.递归的定义最优解的值3.计算最优解的原创 2017-08-25 23:02:15 · 321 阅读 · 0 评论 -
使用二分法与牛顿迭代实现sqrt(int)
二分法实现sqrt(int) 使用二分法逼近求解sqrt(x) x的根不大于x/2+1,只需在[0,X/2+1]内二分查找即可 证明: 假设 sqrt(x)<=x/2+1 则有 => x<= (x/2+1)^2 => x<=x^2/4+1+x => x^2/4+1 =>0 而 x^2/4+1 =>0恒成立。原创 2017-09-03 14:16:02 · 523 阅读 · 0 评论