![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
李子木9
永远有你不知道的
展开
-
二叉树的后序遍历(非递归)
法一:采用标注,分为第一次访问和第二次访问节点第一次访问该节点,记做1,第二次记做2,使用数组存储标注当第二次访问该节点的时候弹出堆栈,输出。void PostOrderTraverse2(BT T) { BT Tmp = T; Stack S = CreatStack(); BT stack[MaxLen]; int top = -1; int flagstack[MaxLen]; while (T || top != -1) { if (T) { stack[++to原创 2021-11-25 16:50:34 · 382 阅读 · 0 评论 -
广义表代码实现(附源代码)
广义表存储结构1.头尾链表存储结构 头尾链表存储结构由两种节点构成,分别是表节点和原子节点。表节点包含3个域——标志域,指向表头的指针域和指向表尾的指针域,原子节点包含2个域——标志域和值域。其中标志域tag为0时表示原子节点,为1时表示表节点。2.扩展线性链表存储结构 扩展线性存储结构同样由两种节点构成——表节点和原子节点。这两种节点都包含3个域。其中,表节点由标志域,表头指针域,表尾指针域构成;原子节点由标志域,值域,表尾指针域构成。...原创 2021-11-20 16:19:15 · 2118 阅读 · 0 评论 -
数据结构——队列应用
队列的应用:到医院看病的过程是,患者先排队等候,排队过程中主要重复两件事:(1)病人到达诊室时,将病历交给护士,排到等候队列中候诊。(2)护士从等候队列中取出下一个患者的病历,该患者进入诊室就诊。在排队时按照”先到先服务”的原则。设计一个算法模拟病人等候就诊的过程。其中”病人到达”用命令‘A’(’a’)表示,”护士让下一位患者就诊”用命令‘N’(‘n’)表示,命令‘Q’(‘q’)表示不再接受病人排队。提示:这里采用一个队列,有”病人到达”命令时即入队,有”护士让下一位患者就诊”命令时即出..原创 2021-10-25 20:20:08 · 1456 阅读 · 0 评论 -
数据结构——表达式求值(中缀表达式转换后缀表达式)
首先,我们先来看下用堆栈来实现中缀表达式转换为后缀表达式的思路: 1.依次读取中缀表达式各项元素; 2.读取到操作数的时候,直接输出到后缀表达式的队列中 3....原创 2021-10-25 13:39:47 · 649 阅读 · 0 评论 -
数据结构—线性表
线性表的操作(一)单链表的操作(1)用随机函数生成8个3位整数(100~999),把这些整数存于单链表中;(2)输出单链表的内容;(3)读入一个整数,查看该整数是否在表中,若在,输出其位置(首位置为1);(4)读入一个整数,以及要插入的位置,把该整数插入到单链表中,输出单链表的内容(要求判断输入的位置是否合理);(5)读入一个整数,若该整数在单链表里,删除该整数,输出单链表的内容;(6)把链单表的内容翻转,输出单链表的内容。//链式存储的线性表/*李子木*/原创 2021-10-07 17:47:47 · 967 阅读 · 4 评论