数据结构
文章平均质量分 70
leumber
这个作者很懒,什么都没留下…
展开
-
单链表的增删改查基本操作
单链表的几种基本操作,增删改查//基本结构typedef int dataType; typedef struct _node { dataType data; //单链表中的数据域 struct _node *next; //单链表的指针域 }LinkNode,*LinkedList; //结点由存放数据元素原创 2017-09-26 15:40:31 · 1018 阅读 · 0 评论 -
单链表反转的几种方法
反转链表,将单链表倒置输出 这个也算是很多面试题里常考的题,刚复习完单链表在这记录一下这几种方法,做个笔记 //链表反转1 创建一个新的链表,遍历原链表头插到新链表LinkedList listReverseList(LinkedList L){ LinkedList temp = L->next; LinkedList start = listCreatNode(NULL)原创 2017-09-26 15:41:40 · 372 阅读 · 0 评论 -
双链表的增删改查基本操作
双链表 在单链表的每个结点中再设置一个指向上一跳的前驱结点的指针域 //结构体定义typedef struct _node { dataType data; //链表中的数据域 struct _node *next; //链表的下一跳 struct _node *prior; //链表的上一跳}LinkNode,*Link原创 2017-10-13 11:24:01 · 775 阅读 · 1 评论 -
栈的增删改查基本操作
栈的增删改查基本操作1.顺序栈//顺序栈结构体定义#define STACKSIZE 64 //栈的大小typedef int stackType;typedef struct _snode{ stackType data[STACKSIZE]; //栈中的实际存储数据 int top; //栈顶指标,等价于数组下标。}SeqSta原创 2017-10-13 13:41:26 · 2016 阅读 · 0 评论 -
队列的入队、出队基本操作
队列先进先出的线性表(FIFO)队尾:队列中指定了用来插入数据的一端队头:队列中指定了用来删除数据的一端入队:数据的插入动作出队:数据的删除动作1.顺序队列//顺序队列#define QUEUESIZE 64typedef struct _sequ{ dataType data[QUEUESIZE]; int front; int rear;}SeQueue,*原创 2017-10-17 14:19:58 · 43942 阅读 · 1 评论 -
二叉树的创建及前序、中序、后序、层序遍历
二叉树1.建立二叉树1.先序中序遍历建立二叉树: 二叉树前序遍历序列中,第一个元素总是树的根节点的值。中序遍历序列中,左子树的节点的值位于根节点的值的左边,右子树的节点的值位于根节点的值的右边。 递归解法: (1)如果前序遍历为空或中序遍历为空或节点个数小于等于0,返回NULL。 (2)创建根节点。前序遍历的第一个数据就是根节点的数据,在中序遍历中找到根节点的位置,可分别得知左子树和右子树原创 2017-10-17 14:22:49 · 1571 阅读 · 0 评论