数据结构
文章平均质量分 65
golden_dreams
努力学习中
展开
-
函数结果状态代码
typedef int Status#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define INFEASIBLE -1#d原创 2016-12-12 17:34:48 · 2999 阅读 · 0 评论 -
1.2线性表的顺序表示和实现
//线性表的顺序表示指的是用一组地址连续的存储单元依次存储线性表的数据元素//通常用数组来描述数据结构中的顺序存储结构//—— —— —— ——线性表的动态分配顺序存储结构—— —— —— ——#define LIST_INIT_SIZE 100 //线性表存储空间的初始分配量#define LISTINCREMENT 10 //线原创 2016-12-12 17:36:13 · 233 阅读 · 0 评论 -
1.1线性表的类型定义
ADT List { 数据对象:D = { a( i ) | a( i ) 是用户自定义类型的元素,i = 1,2,3,4...,n , n>=0} 数据关系:R1={ | a( i - 1 ),a( i )属于D i = 2,3,4...,n} 基本操作: InitList( &L ) 操作结果:构造一个空的线性表L原创 2016-12-12 17:35:34 · 840 阅读 · 1 评论 -
1.3.1线性链表之动态(malloc)链表
/*************线性表单链表存储结构typedef struct LNode { ElemType data; //数据域 struct *next; //指针域}LNode, *LinkList;//查看链表中第i个元素,用e返回其值Status GetEle原创 2016-12-12 17:37:19 · 416 阅读 · 0 评论 -
1.3.1线性链表之静态(结构体数组)链表
结构表示#define MAXSIZE 1000 //链表的最大长度typedef struct { ElemType data; int cur; //该结点所在位序}component , SLinkList[MAXSIZE];//在静态链表中查找第 1 个值为e的元素,/原创 2016-12-12 17:38:04 · 909 阅读 · 0 评论 -
1.3.3线性表的链式存储结构adt
//结点类型typedef struct LNode{ ElemType data; struct LNode *next;}*Link,*Position;//链表类型typedef struct LNode{ Link head,tail; //分别指向线性链表中的头结点和最后一个结点原创 2016-12-12 21:05:52 · 387 阅读 · 0 评论 -
1.3.2循环链表,双向链表
循环链表: 是另一种形式的链式存储结构。它的特点是表中最后一个结点的指针域指向头结点,整个链表形成一个环。 循环链表的操作和线性链表基本一致,差别仅在于算法中的循环条件不是p或p->next是否为空,而是他们 是否等于头指针;双向链表: 双向链表的结点中有两个指针域,其一指向直接后继,另一指向直接前驱//------线性表的双向链表存储结构-----原创 2016-12-12 21:05:19 · 188 阅读 · 0 评论