二叉树具体实现-C语言

二叉树具体实现-C语言 知识回顾: 树 树是n(n>=0)个结点的有限集。当n=0时,称为空树。在任意一棵非空树中应满足: 1、有且仅有一个特定的称为根的结点。 2、当n>1时,其余结点可分为m(m>0)个互不相交的有限集T~1~,T~2~,...,T~n~。其中每个集合本身又是一棵树,并且称为根的子树。 树作为一种逻辑结构,同时也是一种分层结构,具有以下两个特点: 1、树的根结

单链表-C语言

单链表-C语言 线性表L=(a~1~,a~2~,a~3~,...,a~n-2~,a~n-1~,a~n~)采用带头结点的单链表保存,链表中的结点定义如下: typedef struct node{ int data; struct node* next; }NODE; 请设计一个空间复杂度为O(1)且时间上尽可能高效的算法,重新排列L中的各结点,得到线性表L^1^=(a~1~,a~n~,a~2~,a

单链表操作-C语言

单链表操作-C语言 描述: 用户输入 3 4 5 6 7 9999一串整数,9999代表结束,通过头插法新建链表,并输出。通过尾插法新建链表,并输出。 #include <stdio.h> #include <stdlib.h> typedef int ElemType; typedef struct LNode { ElemType data; struct LNode*

线性表

线性表 线性表定义:由n(n>=0)个相同类型的元素组成的有序集合。 L=(a~1~,a~2~,...,a~i-1~,a~i~,a~i+1~,a~n~) 线性表中的元素个数n,称为线性表的长度。当n=0时,线性表为空表。 a~1~是唯一的"第一个"数据元素,a~n~是唯一的"最后一个"数据元素。 a~i-1~为a~i~的直接前驱,a~i+1~为a~i~