说明: 集合是用来管理和组织数据对象的数据结构的。集合有两项基本职能:一、批量的存储数据对象,二、在不暴露集合内部结构的条件下向外界提供访问内部元素的接口(可能存在的遍历方式:顺序、逆序遍历,二叉树的广度优先,先序后序中序遍历等)。要使得集合保持整洁和优雅,而不是说令集合内部包含着各种遍历的方法。因 ...
分类:
编程语言 时间:
2018-06-03 19:30:34
阅读次数:
168
1.先序遍历:根节点->左子树->右子树 2.中序遍历:左子树->根节点->右子树 3.后序遍历:左子树->右子树->根节点 4.按层遍历:从上到下、从左到右按层遍历 5.二叉树节点个数 6.二叉树的最大深度 ...
分类:
编程语言 时间:
2018-06-03 01:01:22
阅读次数:
237
通过二叉树的前序遍历和中序遍历创建树 通过二叉树的后序遍历和中序遍历创建树 只有创建树的代码换了 ...
分类:
其他好文 时间:
2018-06-03 00:01:12
阅读次数:
191
塑造世界经济的50项伟大发明 作者选了50个自认为伟大的发明,从发明的故事讲起,重点阐述经济学角度看发明带来的后果。 读后感觉有点虎头蛇尾,这些发明背后的故事大部分挺有趣,但是作者讲故事天赋不太够,导致大部分故事都不够吸引人。 另外最重要的是全书条理性略差。作者在前言后序中都没能给出选择的标准,50 ...
分类:
其他好文 时间:
2018-06-02 21:27:01
阅读次数:
177
1.斐波那契数列。 求第30个0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,377,610,987,1597,2584,4181,6765,10946,17711,28657,46368…… 2.多态 3.前序遍历中序遍历后续遍历(前序遍历也叫根 ...
分类:
其他好文 时间:
2018-05-28 22:50:45
阅读次数:
269
"Portal" Description 给出一个$n(n\leq10^5)$个数的序列$\{a_n\}$,对该序列进行$n$次操作。若在第$i$次操作前第$i$小的数在$p_i$位置,则翻转区间$[i,p_i]$。易知$n$次操作后序列会变为升序。求出每一次的$p_i$。 Solution spl ...
分类:
编程语言 时间:
2018-05-27 23:45:25
阅读次数:
412
一、二叉树 1、二叉树的概念 二叉树是每个节点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree),其次序不能任意颠倒。 2、性质 (1)若二叉树的层次从0开始,则在二叉树的第i层至多有2^i个结点(i>=0); (2)高度为k的二叉 ...
分类:
其他好文 时间:
2018-05-27 10:39:06
阅读次数:
205
分为深度优先遍历和广度优先遍历,深度优先遍历分先序、中序、后序三种方法,广度优先则一层层的遍历。 先序遍历顺序:根-左-右 中序遍历顺序:左-根-右 后序遍历顺序:左-右-根 先序结果:1 2 4 5 7 8 3 6 中序结果: 4 2 7 5 8 1 3 6 后序结果:4 7 8 5 2 6 3 ...
分类:
其他好文 时间:
2018-05-26 19:35:56
阅读次数:
159
1、深度优先算法 遍历规则:不断地沿着顶点的深度方向遍历。顶点的深度方向是指它的邻接点方向。 最后得出的结果为:ABDECFHG。 Python代码实现的伪代码如下: 2、广度优先算法: 遍历规则: 1)先访问完当前顶点的所有邻接点。(应该看得出广度的意思) 2)先访问顶点的邻接点先于后访问顶点的邻 ...
分类:
编程语言 时间:
2018-05-25 23:36:24
阅读次数:
407
1 #include <stdio.h> 2 #include <malloc.h> 3 typedef struct node1{ 4 char data; 5 struct node1 *lchild,*rchild; 6 }node1,BTCHINALR; 7 8 BTCHINALR *cre ...
分类:
编程语言 时间:
2018-05-25 19:26:19
阅读次数:
211