数据结构
沧海一笑浅悠悠
这个作者很懒,什么都没留下…
展开
-
树的遍历(根据后序遍历中序遍历推出层序遍历)
对于二叉树的遍历,分为深度优先遍历与广度优先遍历,广度优先遍历有时又称作层序遍历。而深度优先遍历又分为前序遍历,中序遍历和后序遍历。三者之间的区别主要在于根结点的遍历顺序。前序遍历的顺序是根结点->左子树->右子树,中序遍历顺序是左子树->根结点->右子树,后序遍历顺序是左子树->右子树->根结点。现在给出树的后序遍历与中序遍历,要求写出该树的层序遍历。以下是p...原创 2018-03-29 20:15:22 · 3289 阅读 · 1 评论 -
[数据结构]L2-022. 重排链表
L2-022. 重排链表给定一个单链表 L1→L2→...→Ln-1→Ln,请编写程序将链表重新排列为 Ln→L1→Ln-1→L2→...。例如:给定L为1→2→3→4→5→6,则输出应该为6→1→5→2→4→3。输入格式:每个输入包含1个测试用例。每个测试用例第1行给出第1个结点的地址和结点总个数,即正整数N (<= 105)。结点的地址是5位非负整数,NULL地址用-1表示。接下来有N行...原创 2018-03-28 21:44:38 · 738 阅读 · 0 评论 -
[数据结构]大根堆小根堆插入操作
堆(heap)是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵树的数组对象。堆总是满足下列性质:1.堆总是一棵完全二叉树。2.堆中某个节点的值总是不大于或不小于其父节点的值。将根节点最大的堆叫做最大堆或大根堆,根节点最小的堆叫做最小堆或小根堆。常见的堆有二叉堆、斐波那契堆等。以下是C/C++大根堆小根堆具体插入方法。后序会深入解析堆结构。大根堆插入操作:void HeapAdju...原创 2018-04-23 22:42:25 · 4087 阅读 · 1 评论