
算法
Me_禹城人
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
JS算法:广度优先搜索(BSF)的理解
广度优先搜索方法的实现(基于《学习JavaScript数据结构与算法》补充学习)实现步骤如下1.用initializeColor函数来将color数组初始化为白色;也就是将每个节点初始化为白色未读2.声明和创建一个队列Queue实例,用于储存 待访问 和 待探索的顶点3.将我们的起始的顶点加入队列4.然后我们就进入循环,循环的条件是队列不为空(1)循环第一步:我们从队列中移除一个顶点,并通过邻接表adjList来获取该顶点的所有邻居,并将该顶点color置为灰色表示该顶点已被我们发现(2原创 2020-09-01 14:01:34 · 1139 阅读 · 0 评论 -
动态规划:最小硬币找零问题
题目:最少硬币找零问题给定一组硬币数,找出一组最少的硬币数,来找换零钱N。比如,可用来找零的硬币为: 1、3、4 待找的钱数为 6。用两个面值为3的硬币找零,最少硬币数为2。而不是 4,1,1这题很典型是动态规划问题,为什么呢?首先我们可以看一下什么问题可以被看做动态规划问题。How should I explain dynamic programming to a 4-year-old?Q底下有个42K赞同的答案,是这样说的:writes down “1+1+1+1+1+1+1+1原创 2020-08-27 09:30:54 · 946 阅读 · 0 评论 -
矩阵链相乘--动态规划 (个人理解)
首先知道矩阵相乘是前一矩阵的横轴和后一矩阵的纵轴的元素的个数必须相同,然后我们就必须明白两个矩阵相乘总的乘法次数就应该等于 ikj,至于为什么看下图理解一下就好了然后我们就正式开始,因为我们的是多矩阵相乘,因此我们必须将矩阵相乘划分先后顺序,谁和谁先相乘,因为矩阵相乘最小单元是两两相乘。因此我们算法的关键是K值的左右横跳,根据K值的左右横跳我们就可以划分出不同情况的矩阵最小单元,就可以得到不同最小单元的结果,然后再根据结果的大小选择相乘次数最小记录了K值左右横跳的过程左右横跳的计算结果原创 2020-08-18 17:27:50 · 622 阅读 · 0 评论