《数据结构》示范程序\树的长子-兄弟表示法

/* 树的长子-兄弟表示法*/

#include<stdio.h>

typedef int DataType ;
struct  CSNode;        /* 树中结点结构 */
typedef  struct  CSNode   *PCSNode; /* 结点的指针类型 */
struct  CSNode         /* 结点结构定义 */
{
  DataType   info;     /* 结点中的元素 */
  PCSNode  lchild;     /* 结点的最左子女的指针 */
  PCSNode  rsibling;     /* 结点的右兄弟的指针 */
};

typedef  struct CSNode  *CSTree; /* 树类型定义 */
typedef  CSTree   *PCSTree;

PCSNode leftChild_cstree(PCSNode p ){
  return p->lchild;
}

PCSNode rightSibling_cstree(PCSNode p ){
 return p->rsibling;
}

PCSNode root_cstree(PCSTree t ){
 return *t;
}

int isNull_cstree(PCSTree t ){
 return *t==NULL;
}

int main(){
 return 0;
}

(转)

时间: 2024-11-20 20:36:38

《数据结构》示范程序\树的长子-兄弟表示法的相关文章

数据结构与算法----树(下)

  大家好,今天继续学习树的数据结构.在上一章,我们讲树的孩子兄弟表示法时,提到了二叉树.今天,我们就来学习二叉树的相关性质.  一.二叉树定义: 二叉树(Binary Tree):n(n≥0)个结点的有限集合,该集合或者为空集(为空时,称为空树),或者由一个根结点.两棵互不相交.称为根结点的左子树.右子树的二叉树组成.(Note:大家注意了,我们在给出二叉树定义时,我们利用了递归概念.就是先给出二叉树概念,再用二叉树概念去解释二叉树.递归是一种很重要的方法,在数据结构中是很重要的,我们会在后面

数据结构5(树)

第5章  树 [例5-1]写出如图5-1所示的树的叶子结点.非终端结点.每个结点的度及树深度.     解: (1)叶子结点有:B.D.F.G.H.I.J. (2)非终端结点有:A.C.E. (3)每个结点的度分别是:A的度为4,C的度为2,E的度为3,其余结点的度为0. (4)树的深度为3. [例5-2]一棵度为2的树与一棵二叉树有什么区别? 解:度为2的树有两个分支,但分支没有左右之分:一棵二叉树也有两个分支,但有左右之分,左右子树的次序不能交换. [例5-3]树与二叉树有什么区别? 解:区

数据结构实践项目——树和二叉树(1)

本文针对[数据结构基础系列(6):树和二叉树]第1-10课时 1 树结构导学 2 树的基本概念 3 树的基本术语 4 树的性质 5 树的存储结构 6 二叉树概念和性质 7 二叉树与树.森林之间的转换 8 二叉树的存储结构 9 二叉树的基本运算及其实现 10 二叉树的遍历 [项目1 - 二叉树算法库] 定义二叉树的链式存储结构,实现其基本运算,并完成测试. 要求: 1.头文件btree.h中定义数据结构并声明用于完成基本运算的函数.对应基本运算的函数包括: void CreateBTNode(BT

【经典数据结构】B树与B+树

本文转载自:http://www.cnblogs.com/yangecnu/p/Introduce-B-Tree-and-B-Plus-Tree.html 维基百科对B树的定义为“在计算机科学中,B树(B-tree)是一种树状数据结构,它能够存储数据.对其进行排序并允许以O(log n)的时间复杂度运行进行查找.顺序读取.插入和删除的数据结构.B树,概括来说是一个节点可以拥有多于2个子节点的二叉查找树.与自平衡二叉查找树不同,B-树为系统最优化大块数据的读和写操作.B-tree算法减少定位记录时

数据结构复习之树

1.本质问题—— 树不是线性表,是一种描述非线性层次关系的数据结构.描述的是一对多的数据结构. 2.基本特征—— 有且仅有一个结点没有直接前驱,那就是根节点: 除了根结点外,其他结点有且仅有一个直接前驱: 每个结点可以有任意后继结点: 一个树结构可以为空,没有任何结点:如果仅仅包含一个结点,那也叫一个树. 3.基本概念—— 兄弟结点——拥有同一个父结点的结点: 孩子.双亲——结点的子树的根称为该节点的孩子,相应地,该节点称为孩子的双亲: 结点的度——一个结点所包含子树的数量: 树的度——该树所有

数据结构之Trie树

1. 概述 Trie树,又称字典树,单词查找树或者前缀树,是一种用于快速检索的多叉树结构,如英文字母的字典树是一个26叉树,数字的字典树是一个10叉树. Trie一词来自retrieve,发音为/tri:/ "tree",也有人读为/tra?/ "try". Trie树可以利用字符串的公共前缀来节约存储空间.如下图所示,该trie树用10个节点保存了6个字符串tea,ten,to,in,inn,int: 在该trie树中,字符串in,inn和int的公共前缀是&qu

【经典数据结构】B树与B+树(转)

本文转载自:http://www.cnblogs.com/yangecnu/p/Introduce-B-Tree-and-B-Plus-Tree.html 维基百科对B树的定义为"在计算机科学中,B树(B-tree)是一种树状数据结构,它能够存储数据.对其进行排序并允许以O(log n)的时间复杂度运行进行查找.顺序读取.插入和删除的数据结构.B树,概括来说是一个节点可以拥有多于2个子节点的二叉查找树.与自平衡二叉查找树不同,B-树为系统最优化大块数据的读和写操作.B-tree算法减少定位记录时

数据结构与算法----树(中)

hey,我们继续上篇文章学习树.上篇文章,我们主要讲了树的一些基本概念.定义,抽象数据结构.今天,我们要学习它的数据结构,让我们开始学习吧. 树的存储结构: 一讲到存储结构,就会想到顺序存储与链式存储,让我们来回顾一下它们的概念.顺序存储,就是用一组连续的内存地址来存储数据元素,我们一般用一维数组来表示连续的内存地址.链式存储,用一块儿空闲的内存区域来存放数据元素.存放数据的地址不需要连续,通过元素中的指针域来表示逻辑关系.像之前我们学习的线性表,因为它是有唯一先驱.唯一后继.所以,顺序存储可以

数据结构习题之树

                                   第六章 树 一.基本要求.重点.难点 本章目的是介绍二叉树的定义.性质.存储结构.遍历.树的定义.存储结构.遍历.树和森林与二叉树的转换,哈夫曼树等内容. 本章重点是掌握二叉树的遍历算法及有关应用.难点是使用本章所学到的有关知识设计出有效算法,解决与树或二叉树相关的应用问题. 二.考核目标.考核要求 1.树的概念,要求达到"理解"层次 1.1树的逻辑结构特征. 1.2树的不同表示方法. 1.3树的经常使用术语及含义.