随笔分类 -  算法

摘要:动态规划之01背包 1.什么是动态规划 动态规划是一种思想,是一种解决方法,并不是一种特定的算法。动态规划最重要的是 状态 和 状态转移方程 。是不是感觉还是听不懂这动态规划到底是啥?听起来就很牛皮,感觉完全学不会?其实并不是这么难理解,下面就结合一道例题来讲解一下 2.分析题意 有N种类型手镯,有 阅读全文
posted @ 2019-05-14 20:17 WhiteBlackCat 阅读(173) 评论(0) 推荐(0)
摘要:广义表相关总结 一.定义 广义表是线性表的推广,广义表中每个元素可以是 原子 ,也可以是 子表 ,原子即单个元素,而子表是广义表。我们可以发现,其实python中的数组就是一个广义表,其内元素可以是单个的元素,也可以是一个数组。 二.广义表的长度和深度 1.长度 广义表的长度就是看第一层所含的元素个 阅读全文
posted @ 2018-06-04 20:02 WhiteBlackCat 阅读(3132) 评论(1) 推荐(0)
摘要:二分答案 1.使用场景 二分答案一般使用在求解符合条件的最小值或者最大值上面,当我们遇到这两个问题的时候,一般都可以使用二分答案来解决问题。 2.什么是二分答案 二分答案就是通过对所有可能的答案区间进行折半查找,不断缩减范围,最终确定答案的方法。 3.求最小值 //求最小值 int getAnswe 阅读全文
posted @ 2018-04-22 15:16 WhiteBlackCat 阅读(1337) 评论(1) 推荐(1)
摘要:深度优先搜索DFS和广度优先搜索BFS简单解析 与树的遍历类似,图的遍历要求从某一点出发,每个点仅被访问一次,这个过程就是图的遍历。图的遍历常用的有深度优先搜索和广度优先搜索,这两者对于有向图和无向图均适用。 一.深度优先搜索 1.理解分析 首先,让我们来看一看更些简单的深度优先搜索DFS。顾名思义 阅读全文
posted @ 2018-03-08 16:19 WhiteBlackCat 阅读(3275) 评论(0) 推荐(1)
摘要:一.引例 一个班上,同学A和同学B在同一个月出生,同学B和同学C在同一个月出生,同学D和同学E同一个月出生,同学F和同学C在同一个月出生...... 问:(1)最多几个人同一个月出生? (2)任选两个人,他们是否同一个月出生? 要回答这些问题,我们很容易想到,我们只需要把同学都写出来,同一个月份出生 阅读全文
posted @ 2018-03-06 10:38 WhiteBlackCat 阅读(790) 评论(0) 推荐(1)
摘要:大数运算 1.为什么要有大数运算 我们都知道计算机能够储存的各种类型数的大小是有限的,比如int型在32位的情况下范围是从 2^31~2^31 1,那么如果我们要计算的数非常的大,我们该如何做呢?那样便需要运用到大数运算。 2.大数运算怎么实现 大数运算本质上来说是模仿人们进行笔算时的操作,将人们笔 阅读全文
posted @ 2017-10-20 17:41 WhiteBlackCat 阅读(4640) 评论(1) 推荐(3)