
数据结构
Miibotree
这个作者很懒,什么都没留下…
展开
-
数据结构查找(2)--平衡的二叉查找树(AVL树)
上篇博客介绍了二叉查找树,来看下各项操作的时间复杂度。查找 插入 删除o(log n ) o(1) o(1)有序 链表 链表我们可以想象下,在构造二叉查找树的时候,如果按以下递增序列构造如原创 2012-12-16 15:39:31 · 2920 阅读 · 0 评论 -
数据结构查找(1)--二叉查找树
准备在期末之前解决掉红黑树。为了解决红黑树,首先学习二叉查找树,然后学习平衡的二叉查找树(这里的关键是树的旋转操作)。最后在已经有上面知识的基础上,再来解决红黑树。至于B树家族,实在是太复杂,自己先了解下。等到自己实力增强的时候再去深入。首先我们来看看二叉查找树:下面是二叉查找树的定义: 二叉排序树或者是一棵空树;或者是具有如下特性的二叉树:(1原创 2012-12-15 21:57:33 · 3251 阅读 · 0 评论 -
数据结构树--哈夫曼树
决心写一个哈夫曼树,巩固自己学的数据结构 一、最优树的定义 结点的路径长度定义为: 从根结点到该结点的路径上 分支的数目。树的路径长度定义为: 树中每个结点的路径长度之和。 树的带权路径长度定义为: 树中所有叶子结点的带权路径长度之和 WPL(T) = Swklk(对所有叶子结点)。原创 2012-12-02 21:38:04 · 6727 阅读 · 2 评论 -
二叉链表的遍历
晚上闲着没事请干,敲敲书上的二叉树,用递归的方法实现最简单的前序,中序,后序遍历Tree.h//BiTree #include #include //define#define OK 1#define ERROR 0#define OVERFLOW -1//typedeftypedef int Status;typedef char TElemType;//s原创 2012-11-08 21:47:56 · 7563 阅读 · 1 评论 -
栈--马踏棋盘
智商是硬伤系列之二...马踏棋盘题目描述就不讲了,下面先写写思路:定义s1 当前所在位置存储的下一步的所有可走路线s[65] s[step] 存储的下一步的所有可走路线函数Number下一步可走的数目Exit 下一步可走的位置,并且压入s[step]思路:1.GetOrdnance 输入初始坐标2.InitStack 栈的初始化操原创 2012-11-08 21:43:22 · 5273 阅读 · 0 评论 -
栈和队列--魔王语言
可以算是一道经典的数据结构的问题吧。关于题目的描述这里就不讲了,反正大家都搜得到的。我的笨脑子经过了自己一个晚上加上一个下午的思索,才终于把这道破题目给做出来了。哎。。。智商是硬伤啊。。。做了模块化处理,敲了一边队列和 栈的操作,一起贴出来算了用的是顺序栈和链队先把关键部分的代码贴出来。。。不然估计没人会看下面的东西。。。Devil.cpp#include "Q原创 2012-11-08 21:41:09 · 4167 阅读 · 0 评论 -
单向循环链表就地逆置
原来自己想过一个思路,后来发现完全是不正确的。看来最后还是得在网上查找算法,最后才实现了。 (1)当链表为空表或只有一个结点时,该链表的逆置链表与原表相同。 (2)当链表含2个以上结点时,可将该链表处理成只含第一结点的带头结点链表和一个无头结点的包含该链表剩余结点的链表。然后,将该无头结点链表中的所有结点顺着链表指针,由前往后将每个结点依次从无头结点链表中摘下,作为第一原创 2012-10-13 15:47:24 · 7918 阅读 · 2 评论 -
顺序栈存储----后缀表达式
中缀表达式我们平时使用的表达式是中缀表达式,也就是说运算符都是在中间的,举个例子来说:(56 - 20)/ (4 + 2)中缀表达式是人们常用的算术表示方法。而且它是通过括号改变运算时候的优先级的。虽然我们看起来比较直观,但是对于机器来说,这样的表达式是很难运算的。后缀表达式所谓后缀表达式,就是将运算符放在操作数的后面,比如1+2*3的后缀表达式为123*+。(这里为了区分原创 2012-03-17 20:20:13 · 6232 阅读 · 0 评论 -
单向循环链表--约瑟夫环
写个约瑟夫环,检验一下自己的学习状况.............................#include #define ElemType int typedef struct LNode{ ElemType data; int num; struct LNode *next;}SqList;void InitList(SqList **L, ElemTyp原创 2012-03-13 13:44:45 · 1474 阅读 · 0 评论 -
关于二级指针与c++中的引用
最近开始看数据结构。不过没有学过c++直接看数据结构。借了本书本也没有说用的是c还是c++语言进行描述。结果才刚开始看链表就遇到了很多问题。。。下面这段代码是单链表里面尾插法建表的函数,是从《数据结构教程 第2版 》李春葆编里摘抄下来的:#define ElemType inttypedef struct LNode{ ElemType data; struct LNode *n原创 2012-03-08 18:30:08 · 3345 阅读 · 0 评论