- 博客(13)
- 收藏
- 关注
原创 二叉树的后序遍历(非递归算法)
/* 后序遍历(非递归算法) ①先序遍历顺序:根节点-左孩子-右孩子 ②后序遍历顺序:左孩子-右孩子-根节点 ③后序遍历倒过来:根节点-右孩子-左孩子 ①和③对比发现,访问顺序只有左孩子和右孩子颠倒了一下 思路: 第一步,将二叉树按照先序非递归算法进行遍历, 注意在入栈的时候左右孩子入栈的顺序,先左后右 。 ...
2018-09-11 22:20:49 6677 4
原创 二叉树的前序、中序、后序遍历(递归法)(C语言实现)
#include<stdio.h>#define ElementType char//树的结点的定义 typedef struct BTNode{ ElementType data;//存放数据 struct BTNode *lchild;//左孩子 struct BTNode *rchild;//右孩子 }BTNode;void Preo...
2018-09-10 22:04:01 2067
原创 二叉树的遍历(递归法、堆栈法)
/* 二叉树的遍历 */ #include <stdio.h> #include <malloc.h> #define Ele char typedef struct BinTree { Ele data; struct BinTree * leftChild; struct BinTree ...
2018-05-14 12:13:59 241
原创 二分查找
/* 二分查找 二分查找的前提: 1 集合有序;2 该集合是连续存储结构 时间复杂度 O(log2n) 最大查找次数O(log n) 最小查找次数 1 */ #include <stdio.h> #define Element int #define Count 127 int main() { El...
2018-05-12 16:41:06 108
原创 队列(连续存储方式实现)
/* 队列(连续存储方式实现) 2018年5月11日17点28分 */ #include <stdio.h> #include <malloc.h> #define Ele int typedef struct ArrayQueue { Ele *dataArr; in...
2018-05-11 18:48:18 576
原创 队列(用链式存储结构实现)
/* 队列(用链式存储结构实现) 功能:初始化、入队、出队、遍历、是否为空 */ #include <stdio.h> #include <malloc.h> #define Ele int typedef struct LinkQueue { Ele data; struct LinkQueue*...
2018-05-11 17:22:50 483
原创 数据结构-栈(C语言)
/* 数据结构-栈(C语言) 功能:建栈、出栈、压栈、判断栈是否为空、 */ #include <stdio.h> #include <malloc.h> #define Ele int typedef struct _Stack { Ele data; struct _Stack* next; } Stack; Stack * NewStack();//初始化栈 in
2018-05-11 16:30:33 252
原创 简单排序(冒泡排序、选择排序、插入排序)
/* 简单排序 1 冒泡排序 两两交换位置(相交选择排序成本有点大) 稳定 2 选择排序 选择最值记住下标到最后交换位置 不稳定 3 插入排序 排好序列 待排序列 依次从待排序列取数,插入到排好的序列 稳定 */#include <stdio.h>#include <stdlib.h>#include <time.h>#include...
2018-05-11 15:41:33 118
原创 链式存储 结构
/* 链式存储 结构 功能:增加 删除 查找 替换 返回总个数 2018年5月11日15点33分 */ #include <stdio.h> #include <malloc.h> #define Ele int typedef struct _LinkArrary { Ele data;...
2018-05-11 15:40:25 79
原创 创建循环队列
/* 2017年6月18日 22:33:02 数据结构 (c) 循环队列 初始化 入队 出队 是否空 是否满 遍历队列*/#include #include #include typedef struct Queue{ int * pBase; int front; int rear; int len;}SQ, * PSQ;
2017-06-18 22:35:37 1324
原创 创建动态栈
/* 2017年6月16日 15:33:30 数据结构(c) 创建动态栈 初始化栈 压栈 出栈 遍历*/#include #include #include typedef struct node { int data; struct node* pNext ;}NODE, *PNODE;typedef struct Stack{ P
2017-06-16 15:36:39 228
原创 创建连续储存数组
/*2017年6月16日 08:45:55数据结构(c)创建连续储存数组功能: 初始化 追加 插入 删除 排序 是否空 是否满*/#include #include #include typedef struct Arr SA;void init (SA *arr, int len);void show (SA *arr);bool is_empt
2017-06-16 09:25:27 262
原创 创建非循环链表
/*2017年6月16日 09:13:09 创建非循环链表 (disunderstand 2)*/#include #include #include typedef struct Node{ int data; struct Node * pNext;}NODE, *PNODE;//函数声明PNODE create_list(int
2017-06-16 09:22:15 222
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人