![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
九层塔炒薄壳
这个作者很懒,什么都没留下…
展开
-
对带头结点的单链表实现就地逆置的算法分析
试写一算法,对单链表实现就地逆置。实现下列函数:void Inverse(LinkList &L); /* 对带头结点的单链表L实现就地逆置 */单链表类型定义如下:typedef struct LNode{ ElemType data; struct LNode *next;} LNode, *LinkList;voi原创 2013-03-28 01:33:10 · 17706 阅读 · 6 评论 -
逆波兰式(后缀表达式)的表达求值
逆波兰表达式求值[编辑]伪代码while有输入符号读入下一个符号IF是一个操作数入栈ELSE IF是一个操作符有一个先验的表格给出该操作符需要n个参数IF堆栈中少于n个操作数(错误) 用户没有输入足够的操作数Else,n个操作数出栈计算操作符。将计算所得的值入栈IF栈内只有一个值这个值就是整个计算式的结果ELSE多于一个值转载 2013-04-08 00:08:20 · 1433 阅读 · 0 评论 -
将中缀表达是转换为后缀表达式(逆波兰式)的一般算法
将一个普通的中序表达式转换为逆波兰表达式的一般算法是:首先需要分配2个栈,一个作为临时存储运算符的栈S1(含一个结束符号),一个作为输入逆波兰式的栈S2(空栈),S1栈可先放入优先级最低的运算符#,注意,中缀式应以此最低优先级的运算符结束。可指定其他字符,不一定非#不可。从中缀式的左端开始取字符,逐序进行如下步骤:(1)若取出的字符是操作数,则分析出完整的运算数,该操作数直接送入S转载 2013-04-08 00:12:12 · 1608 阅读 · 0 评论 -
不同类型的线性链表
线性链表:具有链接存储结构的线性表线性链表: 单链表:每个结点有一个指针域,有一个头指针h而无尾指针,表中最后一个结点的指针域是空的。其结构简单,但查找效率不高(查某结点总要从头开始) 循环链表:每个结点有一个指针域,有一个头指针h和一个尾指针r,表中最后一个结点的指针域不是空的,尾指针指向表的第一个结点。它形成环行结构,可显著提高查找效率(从任何结点出发都能查原创 2013-04-19 23:46:44 · 1074 阅读 · 0 评论 -
图的邻接表实现迪杰斯特拉算法求最短路径
存储结构定义:typedef struct ArcNode { int adjvex;//该弧所指向的顶点的位置 struct ArcNode *nextarc;//指向下一条弧的指针 int length; int price; VertexType departurecity; VertexType arrivalcity;} ArcNode;//弧typedef str原创 2013-07-05 18:04:14 · 4210 阅读 · 1 评论