算法初学
文章平均质量分 59
我就是睡不醒
这个作者很懒,什么都没留下…
展开
-
二、递归(来自郭炜老师的算法)
递归(来自郭炜老师的算法)1.基本思想:一个过程或函数在其定义或说明中直接或间接调用自身的一种方法,通常把一个大型的复杂的问题转化为一个与原问题相似的规模较小的问题来求解。2.算法特点:思路简洁但是运行效率比较低。3.比较经典的有汉诺塔问题和八皇后问题,这两个问题都能在网上找到详细的讲解(推荐一下郭炜老师讲的八皇后问题,讲得真是特别好)。4.课后测验:a.全排列思路:有点类似深度优先遍历用一个flag数组标记字符数组中的字符是否被填写到结果数组,如果没有填写,则将其加入并且递归填写结果数组的原创 2022-02-15 10:58:14 · 290 阅读 · 0 评论 -
一、枚举法(来自郭炜老师的慕课)
1.大体思想:对某一类事情的所有情况进行逐一枚举,并逐一进行检验是否满足条件,这种思想叫做枚举思想。2.采用枚举法解决问题要注意的三个方面:a.建立简洁的数学模型;b.减少搜索的空间;c.采用合适的搜索顺序。3.老师的例题:熄灯问题:(先上代码)# include<iostream># include<string># include<cstring>using namespace std;char orilight[5];//灯泡的原始状态ch原创 2022-02-01 22:14:44 · 2095 阅读 · 0 评论