笔记
忽略名字
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
算法设计与分析_回溯算法
回溯算法 1.回溯法是一种组织搜索的一般技术,有“通用的解题法”之称,用它可以系统的搜索一个问题的所有解或任一解。 2.有许多问题,当需要找出它的解集或者要求回答什么解是满足某些约束条件的最佳解时,往往要使用回溯法。 ①可以系统地搜索一个问题的所有解或任意解,既有系统性又有跳跃性。 ②回溯法的基本做法是搜索,或是一种组织得井井有条的,能避免不必要搜索的穷举式搜索法。 ③这种以深度优先的方式系统地搜...原创 2020-05-01 10:23:31 · 686 阅读 · 0 评论 -
算法设计与分析_贪心算法②
删数问题 给定n位正整数a,去掉其中任意k≤n个数字后,剩下的数字按原次序排列组成一个新的正整数。对于给定的n位正整数a和正整数k,设计一个算法找出剩下数字组成的新数最小的删数方案。 输入: 第1行是1个正整数a,第2行是正整数k。 输出: 对于给定的正整数a,编程计算删去k个数字后得到的最小数。 算法实现: string a; //n位数a int k; cin>>...原创 2020-05-01 09:31:45 · 1108 阅读 · 0 评论 -
算法设计与分析_贪心算法①
贪心算法 ①在求最优解问题的过程中,依据某种贪心标准,从问题的初始状态出发,直接去求每一步的最优解,通过若干次的贪心选择,最终得出整个问题的最优解,这种求解方法就是贪心算法。 ②从贪心算法的定义可以看出,贪心算法不是从整体上考虑问题,它所做出的选择只是在某种意义上的局部最优解,而由问题自身的特性决定了该题运用贪心算法可以得到最优解。 ③如果一个问题可以同时用几种方法解决,贪心算法应该是最好的选择之...原创 2020-05-01 09:07:48 · 463 阅读 · 0 评论 -
算法设计与分析_动态规划②
最大子段和问题 ① 给定由n个整数(包含负整数)组成的序列a1,a2,…,an,求该序列子段和的最大值。 i.当所有整数均为负值时定义其最大子段和为0。 ②所求的最优值为: i.例如,当(a1,a2, ……a7,a8)=(1,-3, 7,8,-4,12, -10,6)时,最大子段和为: ③bj是1到j位置的最大子段和: ④由bj的定义易知,当bj-1>0时bj=bj-1+aj,否则b...原创 2020-05-01 08:49:01 · 460 阅读 · 0 评论 -
算法设计与分析_动态规划①
一、动态规划的基本思想 动态规划算法通常用于求解具有某种最优性质的问题。 在这类问题中,可能会有许多可行解。 每一个解都对应于一个值,我们希望找到具有最优值的解。 基本思想是将待求解问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。 适合于用动态规划求解的问题,经分解得到子问题往往不是互相独立的。若用分治法来解这类问题,则分解得到的子问题数目太多,有些子问题被重复计算了很多...原创 2020-04-30 18:50:21 · 1444 阅读 · 0 评论 -
算法设计与分析_递归与分治
递归算法 1.递归需要有边界条件、递归前进段和递归返回段。 ①当边界条件不满足时,递归前进; ②当边界条件满足时,递归返回。 ③注意:在使用递增归策略时,必须有一个明确的递归结束条件,称为递归出口,否则将无限进行下去(死锁)。 2.递归的缺点: ①递归算法解题的运行效率较低。 ②在递归调用过程中,系统为每一层的返回点、局部变量等开辟了堆栈来存储。递归次数过多容易造成堆栈溢出等。 集合的全排列问题 ...原创 2020-04-29 21:16:50 · 547 阅读 · 0 评论 -
算法设计与分析_递推算法及例题
递推算法 算法特点是:一个问题的求解需一系列的计算,在已知条件和所求问题之间总存在着某种相互联系的关系,在计算时,如果可以找到前后过程之间的数量关系(即递推式),那么,从问题出发逐步推到已知条件,此种方法叫逆推。 数字三角形 如上图所示为一个数字三角形。请编一个程序计算从顶到底的某处的一条路径,使该路径所经过的数字总和最大。只要求输出总和。 1、 一步可沿左斜线向下或右斜线向下走; 2、 三角形...原创 2020-04-29 20:10:53 · 1864 阅读 · 0 评论 -
算法设计与分析_第一章_绪论
第一章 绪论 1.1为什么要学习算法 1.2算法及其重要特性 1.3算法的描述方法 1.4算法设计的一般过程 1.5重要的问题类型 1.1为什么要学习算法 1.算法——程序的灵魂 问题的求解过程: 分析问题→设计算法→编写程序→整理结果 程序设计研究的四个层次: 2.算法→方法学→语言→工具 提高分析问题的能力 算法的形式化→思维的逻辑性、条理性 1.2算法及其重要特性 1.算法(Algorith...原创 2020-04-29 19:19:10 · 591 阅读 · 0 评论 -
数据结构_第八章_排序
第八章 排序 8.1排序的基本概念 8.2插入排序 8.3交换排序 8.4选择排序 8.5归并排序 8.6分配排序 8.1排序的基本概念 排序:给定一组记录的集合{r1, r2, ……, rn},其相应的关键码分别为{k1, k2, ……, kn},排序是将这些记录排列成顺序为{rs1, rs2, ……, rsn}的一个序列,使得相应的关键码满足ks1≤ks2≤……≤ksn(称为升序)或ks1≥k...2020-01-11 21:17:35 · 285 阅读 · 0 评论
分享