![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法设计与分析
文章平均质量分 84
qqqqqqqjiajun
这个作者很懒,什么都没留下…
展开
-
算法设计与分析课程记录week4
算法设计与分析课程记录week4 PS:此文章仅作为个人课程期间的学习记录 蛮力法 1. 概述 蛮力法是一种简单直接地解决问题的方法,通常直接基于问题的描述和所涉及的概念定义,找出所有可能的解。然后选择其中的一种或多种解,若该解不可行则试探下一种可能的解。 使用蛮力法通常有如下几种情况: 搜索所有的解空间:问题的解存在于规模不大的解空间中。 搜索所有的路径:这类问题中不同的路径对应不同的解。 直接计算:按照基于问题的描述和所涉及的概念定义,直接进行计算。往往是一些简单的题,不需要算法技巧的。 模拟和仿真:原创 2021-11-23 18:56:56 · 246 阅读 · 0 评论 -
算法设计与分析课程记录week3
算法设计与分析课程记录week3 PS:此文章仅作为个人课程期间的学习记录 分治法 1 分治法概述 1.1 分治法的设计思想 对于一个规模为n的问题:若该问题可以容易地解决(比如说规模n较小)则直接解决,否则将其分解为k个规模较小的子问题,这些子问题互相独立且与原问题形式相同,递归地解这些子问题,然后将各子问题的解合并得到原问题的解。这种算法设计策略叫做分治法。 分治法所能解决的问题一般具有以下几个特征: 该问题的规模缩小到一定的程度就可以容易地解决。 该问题可以分解为若干个规模较小的相同问题。 利用该问原创 2021-11-23 18:56:21 · 112 阅读 · 0 评论 -
算法设计与分析课程记录week2
算法设计与分析课程记录week2 PS:此文章仅作为个人课程期间的学习记录 递归算法设计技术 1. 递归的概念 在定义一个过程或函数时出现调用本过程或本函数的成分,称之为递归。若调用自身,称之为直接递归。若过程或函数p调用过程或函数q,而q又调用p,称之为间接递归。 能够用递归解决问题的三个条件: 需要解决的问题可以转化为一个或多个子问题来求解,而这些子问题的求解方法与原问题完全相同,只是在数量规模上不同。 递归调用的次数必须是有限的。 必须有出口来结束递归的条件来终止递归。 何时使用递归? 定义是递原创 2021-10-17 15:34:50 · 200 阅读 · 0 评论 -
算法设计与分析课程记录week1
算法设计与分析课程记录week1 PS:此文章仅作为个人课程期间的学习记录 0.概述 推荐教材:《算法设计与分析》(第2版)李春葆等编著 推荐书籍:《算法导论》,《编程之美》,《编程珠玑》 刷题平台: PTA leetcode 推荐网课: 厦门大学算法设计与分析 北京大学算法设计与分析 推荐软件: Visual Studio Code,Dev C++,CodeBlocks 1.算法的概念 算法需具备的五个基本要素: 好的算法的五个特性: C++的引用与STL 引用 在C语言中调用函数时只有从实参到形参的原创 2021-10-11 18:46:10 · 172 阅读 · 0 评论