上一页 1 2 3 4 5 6 ··· 19 下一页
摘要: /* c4-3.h 串的块链存储表示 */ #define CHUNKSIZE 4 /* 可由用户定义的块大小 */ typedef struct Chunk { char ch[CHUNKSIZE]; struct Chunk *next; }Chunk; typedef struct { Chunk *head,*tail; /* 串的头和尾指针 */ int curlen; /* 串的当前长度 */ }LString; /* bo4-3.c 串采用块链存储结构(由c4-3.h定义)的基本操作(16个) */ void InitString(LString *T) { /... 阅读全文
posted @ 2013-12-18 10:10 cpoint 阅读(3777) 评论(0) 推荐(0) 编辑
摘要: /* c4-2.h 串的堆分配存储 */ typedef struct { char *ch; /* 若是非空串,则按串长分配存储区,否则ch为NULL */ int length; /* 串长度 */ }HString; /* bo4-2.c 串采用堆分配存储结构(由c4-2.h定义)的基本操作(15个) */ /* 包括算法4.1、4.4 */ Status StrAssign(HString *T,char *chars) { /* 生成一个其值等于串常量chars的串T */ int i,j; if((*T).ch) free((*T).ch); /* 释放T... 阅读全文
posted @ 2013-12-18 10:05 cpoint 阅读(4911) 评论(0) 推荐(0) 编辑
摘要: /* c4-1.h 串的定长顺序存储表示 */ #define MAXSTRLEN 40 /* 用户可在255以内定义最大串长(1个字节) */ typedef char SString[MAXSTRLEN+1]; /* 0号单元存放串的长度 */ /* bo4-1.c 串采用定长顺序存储结构(由c4-1.h定义)的基本操作(14个) */ /* SString是数组,故不需引用类型。此基本操作包括算法4.2,4.3,4.5 */ Status StrAssign(SString T,char *chars) { /* 生成一个其值等于chars的串T */ int i; if(st... 阅读全文
posted @ 2013-12-18 00:21 cpoint 阅读(1121) 评论(0) 推荐(0) 编辑
摘要: /* c3-3.h 队列的顺序存储结构(可用于循环队列和非循环队列) */ #define MAXQSIZE 5 /* 最大队列长度(对于循环队列,最大队列长度要减1) */ typedef struct { QElemType *base; /* 初始化的动态分配存储空间 */ int front; /* 头指针,若队列不空,指向队列头元素 */ int rear; /* 尾指针,若队列不空,指向队列尾元素的下一个位置 */ }SqQueue; /* bo3-4.c 顺序队列(非循环,存储结构由c3-3.h定义)的基本操作(9个) */ Status InitQueue(SqQ... 阅读全文
posted @ 2013-12-17 23:49 cpoint 阅读(648) 评论(0) 推荐(0) 编辑
摘要: /* c3-2.h 单链队列--队列的链式存储结构 */ typedef struct QNode { QElemType data; struct QNode *next; }QNode,*QueuePtr; typedef struct { QueuePtr front,rear; /* 队头、队尾指针 */ }LinkQueue; /* bo3-2.c 链队列(存储结构由c3-2.h定义)的基本操作(9个) */ Status InitQueue(LinkQueue *Q) { /* 构造一个空队列Q */ (*Q).front=(*Q).rear=(QueuePtr)... 阅读全文
posted @ 2013-12-17 23:48 cpoint 阅读(702) 评论(0) 推荐(0) 编辑
摘要: /* c3-1.h 栈的顺序存储表示 */ #define STACK_INIT_SIZE 10 /* 存储空间初始分配量 */ #define STACKINCREMENT 2 /* 存储空间分配增量 */ typedef struct SqStack { SElemType *base; /* 在栈构造之前和销毁之后,base的值为NULL */ SElemType *top; /* 栈顶指针 */ int stacksize; /* 当前已分配的存储空间,以元素为单位 */ }SqStack; /* 顺序栈 */ /* bo3-1.c 顺序栈(存储结构由c3-1.h定义)的... 阅读全文
posted @ 2013-12-17 23:46 cpoint 阅读(4370) 评论(0) 推荐(0) 编辑
摘要: /* c2-4.h 线性表的双向链表存储结构 */ typedef struct DuLNode { ElemType data; struct DuLNode *prior,*next; }DuLNode,*DuLinkList; /* bo2-5.c 双链循环线性表(存储结构由c2-4.h定义)的基本操作(14个) */ Status InitList(DuLinkList *L) { /* 产生空的双向循环链表L */ *L=(DuLinkList)malloc(sizeof(DuLNode)); if(*L) { (*L)->next=(*L)->prio... 阅读全文
posted @ 2013-12-17 23:44 cpoint 阅读(3088) 评论(0) 推荐(0) 编辑
摘要: /* bo2-4.c 设立尾指针的单循环链表(存储结构由c2-2.h定义)的12个基本操作 */ Status InitList_CL(LinkList *L) { /* 操作结果:构造一个空的线性表L */ *L=(LinkList)malloc(sizeof(struct LNode)); /* 产生头结点,并使L指向此头结点 */ if(!*L) /* 存储分配失败 */ exit(OVERFLOW); (*L)->next=*L; /* 指针域指向头结点 */ return OK; } Status DestroyList_CL(LinkList *L) { ... 阅读全文
posted @ 2013-12-17 23:43 cpoint 阅读(6366) 评论(0) 推荐(0) 编辑
摘要: /* c2-2.h 线性表的单链表存储结构 */ struct LNode { ElemType data; struct LNode *next; }; typedef struct LNode *LinkList; /* 另一种定义LinkList的方法 */ /* bo2-2.c 单链表线性表(存储结构由c2-2.h定义)的基本操作(12个) */ Status InitList(LinkList *L) { /* 操作结果:构造一个空的线性表L */ *L=(LinkList)malloc(sizeof(struct LNode)); /* 产生头结点,并使L指向此头结点... 阅读全文
posted @ 2013-12-17 23:39 cpoint 阅读(4065) 评论(0) 推荐(0) 编辑
摘要: /* c2-1.h 线性表的动态分配顺序存储结构 */ #define LIST_INIT_SIZE 10 /* 线性表存储空间的初始分配量 */ #define LISTINCREMENT 2 /* 线性表存储空间的分配增量 */ typedef struct { ElemType *elem; /* 存储空间基址 */ int length; /* 当前长度 */ int listsize; /* 当前分配的存储容量(以sizeof(ElemType)为单位) */ }SqList; /* bo2-1.c 顺序表示的线性表(存储结构由c2-1.h定义)的基本操作(12个) *... 阅读全文
posted @ 2013-12-17 23:37 cpoint 阅读(7017) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 ··· 19 下一页
浏览次数:travelocity promotion codes