- 博客(8)
- 资源 (10)
- 收藏
- 关注
原创 图的遍历
图的遍历:定义:从图中的某一顶点出发,沿着边访问访问图中其余顶点,且使每个顶点仅被访问一次。通常有两种遍历次序方案:•深度优先遍历(dfs)---类似于前序遍历•广度优先遍历(bfs)---类似于层序遍历•深度优先遍历(dfs)算法思想描述:访问起始顶点v 当 v 还有邻接顶点未被访问时:(起始条件) •深度遍历未访问的邻接顶点
2015-04-25 17:25:57 818
原创 图的定义和存储结构
学习目的及应用:导航 、GPS、网络规划、路径规划交通流可以用一个图来模型化,每一条街道交叉口表示一个顶点,而每一条街道就是一条边。边的值可能是代表限制速度,或者是容量(车道的数目)等等。此时我们可能需要找出一条最短路,或用该信息找出最可能产生交通瓶颈的位置,图的定义:是由顶点的有穷非空集合和顶点之间边的集合组成一种数据结构表示方法: graph = ( V,E )
2015-04-25 17:07:56 1286
原创 线索化二叉树
线索化二叉树指的是二叉树中的结点进行逻辑意义上的“重排列”,使其可以线性的方式访问每个结点前序遍历线索化:方法:利用结点中的空的左指针域,使其指向后继结点。前序遍历下图二叉树,遍历结果是:1 2 4 8 9 5 10 3 6 7,红线部分即指明该结点在前序遍历时的后继元素。算法思想:初始化位置指针 • p = NULL;前序遍历二叉树
2015-04-25 16:45:33 849
原创 遍历二叉树
二叉树的遍历是指从根结点开始,按照某种次序依次访问二叉树中的所有结点,每个结点只能被访问一次。遍历的意义在于把树中的结点变成某种有意义的线性序列。前序遍历:算法思想:二叉树为空,则操作返回不为空,则 • 访问结点数据,并打印出来 • 先序遍历左子树 • 后序遍历右子树实现代码:void pre_order_
2015-04-25 16:31:39 716
原创 创建二叉树
如何在二叉树中定位结点的位置?指路法定位结点:根据生活中的经历:左拐、右拐、左拐、、、大致思路:通过根结点与目标结点的相对位置进行定位,这种方法可以避开二叉树递归的性质“线性定位”C描述:利用bit位进行指路#define BT_LEFT 0#define BT_RIGHT 1typedef unsigned long BT_pos;
2015-04-25 16:29:54 830
原创 二叉树及其性质
孩子兄弟表示法模型:可比较(双亲孩子表示法模型结构)数据域data孩子结点指针 firstchild兄弟结点指针 rightsibfirstchild :指向该结点的第一个孩子rightsib :指向该结点的右兄弟特点:•能够表示任意的树形结构•每个结点中有且仅有三个指针域(如上)•每个结点的结构简单,只有
2015-04-25 16:12:31 887
原创 树
在线性内存中如何实现对非线性事物的存储。树的定义:树:一种非线性的数据结构树是n(n >= 0)个结点的有限级 . n=0时称为空树,在任意一棵非空树中: a)有且只有一个特定的称为根的结点,它只有直接后继,但没有直接前驱 b)当n>1,其余结点可分为m (m >0)个互不相交的有限集 T1、T2...,其中每一个集合本身又是一棵树,并且称为根的子树
2015-04-25 16:00:47 583
原创 栈
栈的定义:一种特殊的表,限制插入和删除只能在一个位置上进行的表。栈的性质:LIFO,last in first out栈常用的操作:创建栈(creat)销毁栈(distory)清空栈(clear)进栈(push)出栈(pop)获取栈顶元素(Top)获取栈的大小(get_length)栈的实现: •数组实现 •单链表
2015-04-25 15:43:15 564
openssl-1.1.0.7z
2021-03-18
Visual Assist X 10.9 Build 2341.2.7z
2020-09-30
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人