数据结构
和铃令仪
勤奋地专注于一件事儿!
展开
-
数据结构——栈的应用举例
本文所有代码均为伪码,仅阐述算法基本思想——《数据结构》清华大学出版社- 算法1 对于输入的任意一个非负十进制整数,打印输出与其等值的N进制数 #define N 8 // 定义待转换的进制N(2~9) typedef int SElemType; // 定义栈元素类型为整型 void conversion() { SqStack s; unsigned n; /原创 2017-02-27 19:27:46 · 708 阅读 · 0 评论 -
数据结构——线性表顺序表示和实现
本文所有代码均为伪码,仅阐述算法基本思想——《数据结构》清华大学出版社算法1 将所有在线性表Lb中但不在La中的数据元素插入到La中void union(List &La, List Lb){ La_len = ListLength(La);//求线性表长度 Lb_len = ListLength(Lb); for{i = 1; i <= Lb_len; i+原创 2017-02-19 11:40:32 · 608 阅读 · 0 评论 -
数据结构——栈与递归的实现
本文所有代码均为伪码,仅阐述算法基本思想- 算法1Hanoi塔问题算法 int c=0; // 全局变量,搬动次数 void move(char x,int n,char z) { // 第n个圆盘从塔座x搬到塔座z printf("第%i步:将%i号盘从%c移到%c\n",++c,n,x,z); } void hanoi(int n,char x,char y,char z) { /原创 2017-03-01 08:40:17 · 990 阅读 · 2 评论 -
数据结构——线性表链式表示和实现(1)
本文所有代码均为伪码,仅阐述算法基本思想——《数据结构》清华大学出版社- 算法1 带有头结点的单链表的基本操作struct LNode{ ElemType data; LNode *next; }LNode, *LinkList;// 构造一个空的线性表Lvoid InitList(LinkList &L){ L=(LinkList)malloc(si原创 2017-02-20 13:15:01 · 469 阅读 · 0 评论 -
数据结构——队列
- 算法1: 链队列(存储结构由c3-2.h定义)的基本操作(9个) void InitQueue(LinkQueue &Q) { // 构造一个空队列Q。 Q.front=Q.rear=(QueuePtr)malloc(sizeof(QNode)); // 生成头结点 if(!Q.front) // 生成头结点失败 exit(OVERFLOW); Q.front->原创 2017-03-03 14:26:39 · 418 阅读 · 0 评论 -
数据结构——离散事件模拟
- 算法:假设某银行有4个窗口对外接待客户,从早晨银行开门起不断有客户进入银行。由于每个窗口在某个时刻只能接待一个客户,因此在客户人数众多时需要在每个窗口前顺次排队,对于刚进入银行的客户,如果某个窗口的业务员正空闲,则可上前输业务;反之,若4个窗口均有客户所占,他便会排在人数最少的队伍后面。编制一个程序模拟银行的这种业务活动并计算一天中客户在银行的平均逗留时间。typedef struct{原创 2017-03-03 15:03:20 · 1761 阅读 · 1 评论 -
数据结构——串
- 算法1: 串采用定长顺序存储结构(由c4-1.h定义)的基本操作(12个) #define DestroyString ClearString // DestroyString()与ClearString()作用相同 #define InitString ClearString // InitString()与ClearString()作用相同 Status StrAssign(SStr原创 2017-03-04 20:35:38 · 416 阅读 · 0 评论 -
数据结构——线性表链式表示和实现(2)
- 算法1 带头结点的双向循环链表(存储结构由c2-4.h定义)的基本操作(14个) typedef struct DuLNode { ElemType data; DuLNode *prior,*next; }DuLNode,*DuLinkList; void InitList(DuLinkList &L) { // 产生空的双向循环链表L L=(DuLinkList)mal原创 2017-02-27 13:31:53 · 368 阅读 · 0 评论 -
数据结构——一元多项式的表示及相加
本文所有代码均为伪码,仅阐述算法基本思想——《数据结构》清华大学出版社一元多项式的表示采用链式存储结构来实现,基本操作和链表的合并类似。以下为算法部分:typedef struct{//项的表示,多项式的项作为LinkList的数据元素 float coef;//系数 int expn;//指数}term,ElemType;//两个类型名:term用于本ADT,ElemType为L原创 2017-02-27 14:50:22 · 4286 阅读 · 0 评论