标签:总结 结点 暑假 路径 第二周 key 序列 顶点 ve
1.查找二叉排序树:
算法思想:
首先将待查关键字key与根节点关键字t进行比较:
a.如果bt->key = k, 则返回根节点指针。
b.如果bt->key < k,则进一步查找左子书。
c.如果bt->key > k,则进一步查找右子树。
使用递归算法实现。
2.jmu-ds-实现KMP:
使用kmp算法,分为三步:
(1) 写出getnext()函数来获得子字符串的next[]数组。
(2) 实现find()函数,通过getnext()函数所返回的next[]函数用kmp算 法找出子字符串的位置。
(3) 在主函数main()中获取输入的字符串数据,调用getnext()和find() 函数实现查找。
3.关键路径:
该题目涉及到拓扑排序的AOE网,AOV网是优先考虑顶点的思路,而我们也同样可以优先考虑边,这个就是AOE网的思路。
求关键路径的步骤:
a.输入顶点数和边数,已经各个弧的信息建立图
b.从源点v1出发,令ve[0]=0;按照拓扑序列往前求各个顶点的ve。如果 得到的拓扑序列个数小于网的顶点数n,说明我们建立的图有环,无 关键路径,直接结束程序
c.从终点vn出发,令vl[n-1]=ve[n-1],按逆拓扑序列,往后求其他顶 点vl值。
d.根据各个顶点的ve和vl求每个弧的e(i)和l(i),如果满足e(i) =l(i),说明是关键活动。
4.修建道路:
这个问题本质上就是求解权值最小的连通生成子图。该题目涉及最小生成树中的克鲁斯卡尔和普利姆算法,无向图最短路径的问题,要求没有直接连接的路的最短路径,需要先求出联通图中最短路径的长度,再减去已经存在的路径长度。所以先将原来已存在的路径的权值设为0,因为已经连接好的路是0,所以一定会经过已经连接好的路,此时只记录整个图的最短路径就是所需要铺设的路的长度。
5.先序和中序构造二叉树
在前序序列中找根结点,利用根结点将中序序列分成两部分(分别是左、右子树)。 然后找到左子树的根结点和右子树的根结点,然后再将中序序列已经分好的两部分进行分 割,一直递归下去,直到没有子树存在。
标签:总结,结点,暑假,路径,第二周,key,序列,顶点,ve 来源: https://www.cnblogs.com/csj-717/p/16461718.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。