![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
慧小七
很懒的一个菜鸟
展开
-
二叉树 郝斌老师-数据结构
逻辑结构 线性: 数组: 链表: 栈和队列是一种特殊的线性结构; 循环队列的核心是数组; 非线性: 树: 定义: 1、有且只有一个称为根的节点; 2、有若干个互不相交的子树,这些子树本身也是一棵树; 通俗的定义: 1、树是由节点和边组成的; ...原创 2018-09-02 21:31:45 · 332 阅读 · 0 评论 -
队列 郝斌老师-数据结构
队列: 定义:一种可以实现“先进先出”的存储结构,类似排队进站; 一端插尾部rear插入,另一端头部front删除出队; 分类:头部:front 尾部:rear指针域为空; 链式队列——链表实现; 静态队列——数组实现: 静态队列通常都必须是循环队列; f...原创 2018-08-30 12:35:30 · 389 阅读 · 0 评论 -
汉诺塔 郝斌老师—数据结构
递归 定义:一个函数自己直接或间接调用自己(数据结构课本第56页) 后调用,先返回;先调用,后返回; 递归必须满足的三个条件: 1、递归必须得有一个明确的中止条件; 2、该函数所处理的数据规模必须在递减; 递归的值可以递增,但是处理的规模必须递减; 3、这个转化必须是可解的; 循环和递归的关系:...原创 2018-09-01 15:57:33 · 249 阅读 · 0 评论 -
队列(程序) 郝斌老师-数据结构
定义结构体 typedef struct Queue { int *pBase; int front; int rear; }QUEUE; 队列初始化 void init(QUEUE *pQ) {//将pQ->pBase当做数组的首地址处理 pQ->pBase=(int *)malloc(sizeof(int) * 6);// 假...原创 2018-08-31 13:09:28 · 307 阅读 · 0 评论 -
栈 郝斌老师-数据结构
//pTop和pBottom直面是垃圾值,只有当两者同时指向一个没事实际含义的头结点时才造出一个空栈 void init(PSTACK pS)//将init(&S)中S的地址赋给pS { pS->pTop = (PNODE)malloc(sizeof(NODE)); if (NULL == pS->pTop) { printf("动态...原创 2018-08-16 19:29:01 · 263 阅读 · 0 评论 -
链表的理论知识 郝斌老师-数据结构
链表内容:离散存储 定义: n个节点离散分配 彼此通过指针相连 每个节点只有一个前驱结点,每个节点只有一个后续节点 首节点没有前驱结点,尾节点没有后续节点 专业术语:0(头结点)->1(首节点)->2>->3->5(尾节点) 一个链表,存放了1、2、3、5四个有效内容,通过指针相连,通常会在首节点的前面加上一个头节点 首节点 ...原创 2018-08-15 18:11:55 · 353 阅读 · 0 评论 -
离散存储-链表 (创建、遍历、排序、插入、删除) 郝斌老师-数据结构
#include <stdio.h> #include<malloc.h> #include<stdlib.h> typedef struct Node { int data;//原创 2018-08-14 15:50:50 · 256 阅读 · 0 评论 -
连续存储-数组 郝斌老师-数据结构
#include <stdio.h> #include <malloc.h>//包含了malloc函数 #include <stdlib.h>//包含了exit函数 /*定义了一个数据类型,该数据类型的名字叫做struct Arr, 该数据类型含有三个成员,分别是pBase、len、cnt*/ struct Arr { i原创 2018-08-14 15:46:29 · 239 阅读 · 0 评论 -
链式二叉树的具体程序 郝斌老师-数据结构
#include<stdio.h> #include<malloc.h> struct BTNode *CreatBiTree(); void PreTraverseBTree(struct BTNode *pT); void InTraverseBTree(struct BTNode *pT); void PostTraverseBTree(struct BTNode ...原创 2018-09-03 15:56:38 · 179 阅读 · 0 评论