数据结构与算法
文章平均质量分 62
Hsianus
这个作者很懒,什么都没留下…
展开
-
【数据结构】查找与排序
哈希函数:在记录的关键字与记录的存储地址之间建立的一种对应关系哈希查找:又叫散列查找,利用哈希函数进行查找的过程。哈希函数是一种映射,即从关键字空间到存储地址空间的一种映射。原创 2023-12-25 18:55:13 · 1194 阅读 · 0 评论 -
【数据结构】动态规划
将待求解问题分解成若干个子问题,但是经分解得到的子问题往往的,使用分治法求解时,有些子问题被重复计算了许多次。原创 2023-12-24 18:52:11 · 3012 阅读 · 0 评论 -
【数据结构】贪心算法
贪心算法是指在对问题求解时,总是做出在当前看来是最好的选择。也就是说,不从整体最优上加以考虑,只做出在某种意义上的。贪心算法的结果是最优解的最好近似。优点:简单,高效。缺点:可能不是正确的或最优的解。原创 2023-12-13 20:26:32 · 1643 阅读 · 0 评论 -
【数据结构】AOV网与拓扑排序
设G=(V,E)是一个具有n个顶点的有向图,V中的顶点序列称为一个拓扑序列,当且仅当满足下列条件:若从顶点到有一条路径,则在顶点序列中顶点必在之前。原创 2023-12-03 20:14:24 · 1418 阅读 · 0 评论 -
【数据结构】最短路径(Dijskra算法)
计算机网络传输的问题:怎样找到一种最经济的方式,从一台计算机向网上所有其他计算机发送一条消息。抽象为:给定带权有向图G=(V,E)和源点v,求从v到G中其余各顶点的最短路径。给定带权有向图G=(V,E)和源点vV,求从v到G中其余各顶点的最短路径。原创 2023-12-02 09:06:33 · 916 阅读 · 0 评论 -
【数据结构】最小生成树(Kruskal算法)
设无向连通网为G=(V,E),令G的最小生成树为T=(U,TE),其初态为U=V,TE={},然后,按照边的权值由小到大的顺序,考察G的边集E中的各条边。若被考察的边的两个顶点属于T的两个不同的连通分量,则将此边作为最小生成树的边加入到T中,同时把两个连通分量连接为一个连通分量;若被考察边的两个顶点属于同一个连通分量,则舍去此边,以免造成回路,如此下去,当T中的连通分量个数为1时,此连通分量便为G的一棵最小生成树。原创 2023-11-21 11:24:56 · 489 阅读 · 0 评论 -
【数据机构】最小生成树(prim算法)
在n个城市之间建设通信网络,至少需要架设多少条通信线路?如果每两个城市之间架设通信线路的造价是不一样的,那么如何设计才能使得总造价最小?原创 2023-11-20 22:13:25 · 133 阅读 · 0 评论 -
【数据结构】邻接表与邻接矩阵的转换
先设置一个空的邻接表,然后查找邻接矩阵的值不为零元素,找到后在邻接表的单链表对应位置加入表边节点。原创 2023-11-19 11:18:52 · 1254 阅读 · 0 评论 -
【数据结构】图的广度优先遍历
(1)访问顶点v;(2)依次访问v的各个未被访问的邻接点v1,v2,v3……,vk;(3)分别从v1,v2,v3……,vk出发依次访问他们未被访问的邻接点,并使“先被访问顶点的邻接点”先于“后被访问的邻接点”被访问。直至图中所有与顶点v有路径相通的顶点都被访问到。原创 2023-11-19 10:47:34 · 340 阅读 · 0 评论 -
【数据结构】图的存储结构(邻接矩阵)
任何两个顶点之间都可能存在边,无法通过存储位置表示这种任意的逻辑关系。图无法采用顺序存储结构。原创 2023-11-18 10:16:34 · 666 阅读 · 0 评论 -
【数据结构】图的简介(图的逻辑结构)
图是由顶点的有穷非空集合和顶点之间边的几何组成。通常表示为:G=(V,E)注:1)G表示一个图2)V是图G中顶点的集合3)E是图G中顶点之间边的集合4)在线性表中,元素的个数可以为0,称之为空表;在树中,元素的个数可以为0,称之为空树;但是在图中,顶点个数不能为0,可以没有边。ADT GraphData顶点的有穷非空集合和边的集合Operation初始销毁深度优先搜索广度优先搜索。原创 2023-11-18 09:46:04 · 668 阅读 · 0 评论 -
数据结构——二叉排序树
二叉排序树或是一颗空树,或是一棵具有以下性质的树(1)若它的左子树不空,则它左子树上所有结点的值均小于根结点的值。(2)若它的右子树不空,则它右子树上所有结点的值均大于根结点的值。(3)它的左右子树都是二叉排序树1)一个无序序列可以通过构造一棵二叉排序树而变成一个有序序列2)每次插入的新结点都是二叉排序树上新的叶子结点3)找到插入位置后,不必移动其它结点,仅需修改某个结点的指针4)在左子树/右子树的查找过程与在整棵树上查找过程相同5)新插入的结点没有破坏原有结点之间的关系。原创 2023-11-09 17:07:44 · 91 阅读 · 0 评论 -
数据结构——哈夫曼树
通常表示该结点的访问次数。原创 2023-11-08 19:28:18 · 545 阅读 · 0 评论 -
链式队列的实现
【代码】链式队列的实现。原创 2023-10-29 10:31:45 · 38 阅读 · 0 评论 -
循环队列的实现
队列是一种特殊的线性表,它只允许在表的前端(front)进行删除操作,而在表的后端(rear)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。原创 2023-10-29 09:59:19 · 49 阅读 · 0 评论