![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
青木小乙
这个作者很懒,什么都没留下…
展开
-
树和二叉树
1、定义① 有且只有一个称为根的节点② 有若干个互不相交的子树,这些子树本身也是一棵树。另:数是有节点和变组成,每一个节点只能有一个父节点,但是可以有多个子节点,但根节点没有父节点专业术语: 节点、父节点、子节点、子孙、堂兄弟深度:从根节点到最低层节点的层数称为深度;根节点是第一层叶子节点:没有子节点的节点非终端节点:非叶子节点度:子节点的个数2、分类一般数:任意一个节点的子节点的个数都不受限制二叉树:任意一个节点的子节点个数最多两个,且子节点的位置不可更改一般二叉树。满二叉树:在原创 2021-07-02 15:52:23 · 113 阅读 · 0 评论 -
栈和队列
栈定义一种可以实现“先进后出”的数据结构。它是一种运算受限的线性表。分类静态栈动态栈算法#include<stdio.h>#include<malloc.h>#include<stdlib.h>typedef struct Node{ //创建一个节点的结构体类型 int data; struct Node * pNext;}NODE,* PNODE;typedef struct Stack{ //存入栈低和栈原创 2021-03-10 22:26:08 · 75 阅读 · 0 评论 -
顺序储存-数组
C语言连续储存-数组这个使用指针和结构体来模拟数组的存储,并实现java中ArrayList的部分功能。struct Arr{ int *pBase; //存储的是数组第一个元素的地址 int len; //数组所能容纳的最大元素的个数 int cnt; //当前数组有效元素的个数};完成10个功能,几乎所有的函数都必须传入结构体类型的指针变量,在后面就不特别说明了。void init_arr(struct Arr * pArr,int length); //1.初始化数组boo原创 2021-02-25 21:26:13 · 231 阅读 · 0 评论 -
顺序存储--链表
文章目录一、typedef的用法二、链表2.1、定义2.2、分类2.3、单链表2.4、双链表一、typedef的用法#include<stdio.h>typedef int aaa; typedef struct Student{ //声明一个结构体 int age; float score;}ST;int main(){ struct Student st; //声明一个结构体变量 ST st2; //使用 typedef 后,同样声明一个结构体变量原创 2021-03-01 15:13:33 · 482 阅读 · 0 评论