
数据结构
文章平均质量分 79
数据结构
墨上烟雨
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
数据结构--(ElemType *&T)代表的意义
1、前言ElemType表示抽象数据类型。首先看个例子:函数1:void swap1 (int x, int y){ int temp; temp = x; x = y; y = temp;}函数2:void swap2 (int &x, int &y){ int temp; temp = x; x = y;...原创 2019-04-26 19:24:32 · 5877 阅读 · 0 评论 -
线性表—顺序存储
1、代码list.h#ifndef LIST_H_INCLUDED#define LIST_H_INCLUDED#include <stdio.h>#define ERROR 0#define TRUE 1#define MAXSIZE 20typedef int Status;typedef int DataType;typedef struct{ ...原创 2019-07-31 14:19:49 · 263 阅读 · 0 评论 -
线性表—链式存储之单链表
1、定义用一组地址任意的存储单元存放线性表中的数据元素。其结构特点:逻辑上相邻的数据元素在物理上不一定相邻。2、表示方式链表中的数据是以结点来表示3、相关概念数据域存储数据元素信息的域指针域存储后继元素的域节点数据域+指针域头指针指向链表中第一个结点(或为头结点、或为首元结点)的指针头结点在链表的首元结点之前附设的一个结点;数据域内只放空表标志和表长等信息,它不计入表...原创 2019-07-31 16:52:23 · 415 阅读 · 0 评论 -
栈—顺序结构
1、定义只能在固定一端进行插入和删除操作的线性表。特点:*后进先出*利用一组地址连续的存储单元依次存放自栈底到栈顶的数据元素2、相关概念*栈顶:允许进行删除和插入操作的一端*栈底:不允许进行删除和插入操作的一端3、代码stack.h#ifndef STACK_H#define STACK_H#include <stdio.h>#define TRUE 1...原创 2019-08-26 17:03:41 · 172 阅读 · 0 评论 -
队列—顺序结构
1、定义只能在表的一端进行插入操作,在表的另一端进行删除操作的线性表特点:*先进先出*存储单元逻辑上连续,地址也连续2、相关术语*队头:允许删除数据的一端*队尾:允许插入数据的一端*头指针:指向队头元素的指针*尾指针:指向队尾元素的下一个位置的指针3、假溢出顺序队列因多次入队列和出队列操作后出现的虽有存储空间但不能进行入队列操作的情况例如:如上图所示可以存储5个元素的...原创 2019-08-29 15:19:39 · 1078 阅读 · 0 评论 -
栈—链式结构
1、定义以头指针为栈顶,在头指针处进行插入和删除,带头结点的单链表(也可不带头结点)特点:*先进后出*存储单元逻辑上连续但地址不一定连续*链栈的入栈、出栈操作就是栈顶的插入与删除操作,修改指针即可完成2、优点*一般不会出现栈满情况,除非没有空间导致malloc分配失败。*采用链栈存储方式的优点是,当栈中元素个数变化较大,准确数字难以确定时,链栈较顺序堆栈方便。3、代码stac...原创 2019-08-29 15:23:59 · 309 阅读 · 0 评论 -
队列—链式结构
1、定义队列的链式存储结构,实质就是线性表的单链表,只是限定尾部进头部出的规则。2、结构如图所示1)队列非空时,将头指针(front)指向头结点,尾指针指(rear)向队列的最后一个节点。2)队列为空时,头指针(front)和尾指针指(rear)都指向头结点。3、代码queue.h#ifndef Queue_H#define Queue_H#include <std...原创 2019-08-30 14:01:44 · 765 阅读 · 0 评论