数据结构
路星迎
人总是在不断总结得失,以求进步,这是根本,也是必须。
展开
-
个位数表达式求值(C/C++实现)
利用数据结构中的栈,搞懂具体的转换算法,很容易可以写出代码 中缀转后缀: 通过手算大量的中缀转后缀的例子,我们不难发现,二者数字的相对位置是不变的,变的只有运算符的相对位置。 具体思想描述(个位数的式子): 我们创建一个队列来存储后缀表达式,一个栈存储转换过程中运算符。 我们从头开始扫描中缀表达式: ①若当前字符是数字时,添加到队列 ②当扫描到运算符,判断栈是否为空,为空则添加到栈中,不为空转③ ③判断当前扫描到的运算符与栈顶运算符的关系。若栈顶运算符优先级大于或等于当前扫描的运算符转④ 反之或栈空.原创 2021-03-07 16:16:47 · 813 阅读 · 0 评论 -
最小生成树Kruskal算法模板(c/c++)
最小生成树的Kruskal算法网上的介绍层出不穷。 个人理解:在不构成回路的情况下,优先选择最短的边,若有n个点,则选择n-1条边 下面是模板 参照例题 “”“公路村村通”或者 hdu1863 公路村村通 #include"iostream" #include"algorithm" using namespace std; int f[1009]; int s=0; int chang=0; s...原创 2019-03-29 15:35:32 · 624 阅读 · 1 评论 -
合并有序单链表
数据结构实验之链表四:有序链表的归并 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 分别输入两个有序的整数序列(分别包含M和N个数据),建立两个有序的单链表,将这两个有序单链表合并成为一个大的有序单链表,并依次输出合并后的单链表数据。 Input 第一行输入M与N的值; 第二行依次输入M个有序的整数; 第三行依次输入...原创 2019-07-19 16:31:19 · 409 阅读 · 0 评论 -
PTA 7-9 旅游规划 (Bellman和Dijkstra)
7-9 旅游规划 (25 分) 有了一张自驾旅游路线图,你会知道城市间的高速公路长度、以及该公路要收取的过路费。现在需要你写一个程序,帮助前来咨询的游客找一条出发地和目的地之间的最短路径。如果有若干条路径都是最短的,那么需要输出最便宜的一条路径。 输入格式: 输入说明:输入数据的第1行给出4个正整数N、M、S、D,其中N(2≤N≤500)是城市的个数,顺便假设城市的编号为0~(N−1);M是高速公...原创 2019-07-24 15:49:57 · 217 阅读 · 0 评论