- 博客(18)
- 收藏
- 关注
原创 一个人的生活状态
我认为一个人有4个生活状态: 起床:思维活跃-容易多想、贪玩、不容易完成从0到1的跨越 —坚持坚持,万事开头难 工作、学习:思维与心情的活跃度开始下降-更容易集中,但同时心情也会开始逐渐变得糟糕 睡前工作:疲乏阶段,工作效率低下 熬夜工作:极度疲乏阶段,身体与心情逐渐崩溃,想哭、想咒骂… —哒哒哒...
2021-02-27 19:44:42
130
原创 14圆排列问题-算法分析与实践大作业
1.问题圆排列问题:给定n个圆的半径序列,将它们放到矩形框中,各圆与矩形底边相切,求具有最小排列长度的圆排列。2.解析n个圆放在一条水平线上,用一个矩形框将所有圆给框在一起,四条边都有圆与其相切。求这个矩形框的水平长度最小,也就是圆排列问题的解分析:n个圆不同的排列会造成最后的排列长度不同,那么利用回溯算法,计算每个排列的长度,找出最小的即可。这个篇章思想:① 每个圆的圆心的横坐标存储在X数组中,X[1]代表第一个圆的圆心横坐标,即为0。② 每个圆的半径存储在R数组中。③ 所有排列中,最左
2020-06-04 22:50:16
790
原创 13Note(读书笔记)-算法分析与实践作业13
《数据结构、算法与应用-C++语言描述》读书心得我虽然没有读完这本书,只是读了其中的一部分,但是仍然感觉收获满满,get到了新的一种生活方式俗话说:“读书可以医愚”。这个书籍指的是能够动脑,获取知识的书籍。并不是指小说等悠闲小说。这个阅读让我的意志更集中,降低娱乐的诱惑性。这本书让我了解了一些算法的思想,自我感觉应该堪堪算法入门了。了解了书中关于数组、栈和队列、链表、集合、二叉树、图、排序、检索、动态规划、贪心算法都有详细的介绍。感觉非常的不错。先来说说感受吧,首次接触算法时,我是感觉非常困难的,虽
2020-06-04 08:40:47
200
原创 图的m着色问题-算法分析与实践作业12
1.问题 图的m着色问题。给定无向连通图G和m种颜色,用这些颜色给图的顶点着色,每个顶点一种颜色。如果要求G的每条边的两个顶点着不同颜色。给出所有可能的着色方案;如果不存在,则回答“NO”。2.解析使用回溯算法:解决问题时,每进行一步,都是抱着试试看的态度,如果发现当前选择并不是最好的,或者这么走下去肯定达不到目标,立刻做回退操作重新选择。这种走不通就回退再走的方法就是回溯算法。使用邻接矩阵存放无向图算法的解决思路是:1.从无向图的第一个节点开始,从第一个颜色开始,依次判断当前颜色是否正确,
2020-06-03 08:31:02
793
原创 最优前缀编码-算法分析与实践作业11
1.问题代码(码字):Q {001,00,010,01}表示字符 a, b, c, d同一序列:0100001产生两种译码(产生歧义):01 00 001; 010 00 01二元前缀码 :任何字符的代码不能作为其他字符代码的前缀—避免了上述歧义产生利用二元前缀码译码 :从第一个字符开始一次读入每个字符(0 或 1),如果发现读到的子串与某个码字相等,就将这个子串译作对应的码字;然后从下一个字符开始继续这个过程,直到读完输入的字符串为止。二元前缀编码存储 :二叉树结构,每个字符作为树叶,对应这个
2020-05-30 21:17:20
866
原创 相容问题-贪心策略-算法分析与实践作业10
1.问题问题描述有 n 项活动申请使用同一个礼堂,每项活动有一个开始时间和一个截止时间。如果任何两个活动不能同时举行,问如何选择这些活动,从而使得被安排的活动数量达到最多。问题建模设S ={1,2,…,n}为活动的集合,si和fi分别为活动 i 的开始和截止时间i =1,2,…,n,定义:活动 i 和 j 相容 等价 si大于等于fj或sj大于等于fi, i≠j—可以画一条线把si与fi和sj和fj画上去结合理解求 S 最大的两两相容的活动子集 A。–相容:两者之间不能冲突2.解析类似于
2020-05-12 12:08:29
909
原创 最长公共子序列LCS--算法分析与实践9
1.问题定义设 X 和 Z 是两个序列,其中X = <x1,x2….,xm>Z = <z1,z2,….,zk>如果存在X的元素构成的按下标严格递增序列<xi1,xi2,….,xik>,使xij = zj,j=1,2,….,k.那么Z是X的子序列,Z含有的元素个数,称为子序列的长度按下标递增,比如X中的i1到i多少是1,3,6,7,可以不连续,但需要递增定义设X和Y是两个序列,如果Z既是X的子序列,也是Y的子序列,则称Z是X和Y的公共子序列实例:X =
2020-05-11 11:08:33
267
原创 矩阵链的乘法问题-算法分析与实践作业8
1.问题设A1,A2,……,An为 n 个矩阵的序列,其中 为 阶矩阵,这个矩阵链的输入用向量P=<P0,P1,….,Pn>给出。给定向量P,确定一种乘法次序,使得基本运算的总次数达到最小。2.解析例如, P=<10,100,5,50>,则A1:10×100,A2:100×5,A3:5×50(A1A2)A3:10×100×5+10×5×50 = 7500A1(A2A3):10×100×50+100×5×50 = 75000这个×看作一种符号表示多少行多少列的矩阵P
2020-05-10 15:45:40
820
原创 投资问题-算法分析与实践作业7
1.问题设 m 元钱,n 项投资,函数 表示将 x 元投入第 i 项项目所产生的效益,i=1,2,…,n.问:如何分配这 m 元钱,使得投资的总效益最高?2.解析3. 设计伪代码typedef struct{ float benefit; int A,B,C;}Allot;void AddChoice(Allot *Fx,float **temp,int sta...
2020-04-14 20:18:09
779
原创 选定第K小元素-算法分析与实践作业6
1.问题设 L 是 n 个元素的集合,从 L 中选取第 k 小的元素,其中 1<=k<=n。这里的第 k 小元素是指,当 L 按从小到大排好序之后,排在第 k 个位置的元素。2.解析k=|S1|+1,m就是所要找的第k小的数(以m为划分标准后,比m小的有|S1l个,如果恰巧k=|S|+1则m就是所要找的第k小的数)k<=|S1|,归约为在s,中找第k1小的子问题,k1在...
2020-04-07 22:17:23
355
原创 最近对问题-算法分析与实践作业5
1.问题首先来看最近对问题,最近对问题描述的就是在包含n个端的集合中找到距离最近的两个点,当然问题也可以定义在多维空间中,但是这里只是跟随书上的思路实现了二维情况下的最近对问题。假设所有讨论的点是以标准的笛卡尔坐标形式(x,y)给出的,那么在两个点Pi=(Xi,Yi)和Pj=(Xj,Yj)之间的距离是标准的欧几里得距离:d(Pi,Pj)=sqrt( (X1-X2)2+(Y1-Y2)2 )2....
2020-03-31 10:00:23
484
原创 二分归并排序-算法分析与实践作业4
1.问题二分归并排序:对n个不同的数构成的数组A[1…n]进行排序,其中n=2^k2.解析1、分治思想将原问题分解为几个规模较小但类似于原问题的子问题,递归地求解这些子问题,然后再合并这些子问题的解来建立原问题的解。分治模式在每层递归时都有三个步骤:(1) 分解原问题为若干子问题,这些子问题是原问题的规模较小的实例。(2) 解决这些子问题,递归地求解各子问题。然而...
2020-03-22 16:38:46
307
原创 二分法查找-算法分析与实践作业3
1.问题在一个排好序的数组T[1…n]中查找x,如果x在T中,输出x在T的下标j;如果x不在T中,输出j=0。2.解析说明:元素必须是有序的,如果是无序的则要先进行排序操作。基本思想:也称为是折半查找,属于有序查找算法。用给定值k先与中间结点的关键字比较,中间结点把线形表分成两个子表,若相等则查找成功;若不相等,再根据k与该中间结点关键字的比较结果确定下一步查找哪个子表,这样递归进行,直到...
2020-03-16 19:07:49
266
原创 顺序查找法-算法分析与实践作业3
1.问题在一个排好序的数组T[1…n]中查找x,如果x在T中,输出x在T的下标j;如果x不在T中,输出j=0。2.解析说明:顺序查找适合于存储结构为顺序存储或链接存储的线性表。基本思想:顺序查找也称为线形查找,属于无序查找算法。从数据结构线形表的一端开始,顺序扫描,依次将扫描到的结点关键字与给定值k相比较,若相等则表示查找成功;若扫描结束仍没有找到关键字等于k的结点,表示查找失败。3. ...
2020-03-16 19:06:18
516
原创 Dijkstra算法求由顶点a到顶点h的最短路径-算法分析与实践作业2-1
1.问题对于下图使用Dijkstra算法求由顶点a到顶点h的最短路径 2.解析用V1表示已经找到最短路径的顶点,V2表示与V1中某个顶点相邻接且不在V1中的顶点;E1表示加入到最短路径中的边,E2为与V1中的顶点相邻接且距离最短的路径。步骤 V1 V2 E1 E2 1. {a} {b} {...
2020-03-09 22:43:07
7767
原创 Floyd算法求各个顶点的最短距离-算法分析与实践作业2-1
1.问题用Floyd算法求解下图各个顶点的最短距离。写出Floyd算法的伪代码和给出距离矩阵(顶点之间的最短距离矩阵)2.解析上图中有4个城市8条公路,公路上的数字表示这条公路的长短。请注意这些公路是单向的。我们现在需要求任意两个城市之间的最短路程,也就是求任意两个点之间的最短路径。这个问题这也被称为“多源最短路径”问题。现在需要一个数据结构来存储图的信息,我们仍然可以用一个4*4的矩阵...
2020-03-09 21:51:22
395
1
原创 Prim算法构造最小生成树问题-算法分析与实践作业1-2
1.问题带权图:边赋以权值的图称为网或带权图,带权图的生成树也是带权的,生成树T各边的权值总和称为该树的权。最小生成树(MST):权值最小的生成树。最小生成树的性质:假设G=(V,E)是一个连通网,U是顶点V的一个非空子集。若(u,v)是一条具有最小权值的边,其中u∈U,v∈V-U,则必存在一棵包含边(u,v)的最小生成树。完成构造网的最小生成树必须解决下面两个问题: (1)尽可能选取...
2020-03-02 21:26:48
419
原创 Kruskal构造最小生成树问题-算法分析与实践作业1-1
1.问题带权图:边赋以权值的图称为网或带权图,带权图的生成树也是带权的,生成树T各边的权值总和称为该树的权。最小生成树(MST):权值最小的生成树。最小生成树的性质:假设G=(V,E)是一个连通网,U是顶点V的一个非空子集。若(u,v)是一条具有最小权值的边,其中u∈U,v∈V-U,则必存在一棵包含边(u,v)的最小生成树。完成构造网的最小生成树必须解决下面两个问题: (1)尽可能选取...
2020-03-02 21:10:09
387
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人