【Data Structure】------类型定义

 

              

     【Data Structure】------类型定义

 

 


小编今天来和你一起分享一下,类型的定义,在数据结构中有表,队,栈和链,他们的定义分别是怎样的?


 

为什么要定义类型?

 

  

通俗的说就是给数据分配一定的恐惧,想想,如果不事先声明类型的话,也就不好怎么确定分配多少内存来存储数据了。

 


 怎么定义?具体的表、队、栈和链的定义:


 

1,顺序表的定义:

 

 

Constint Maxsize=20;  //预先定义一个足够大的常数
Typedef struct           
{
DataType data[Maxsize];     //存放数据数组
Int length;        //顺序表的实际长度
} SeqList;          //顺序表类型名:SeqList
SeqList L;        //定义L为一个顺序表

 

例子:

Cons tint Maxsize=7;
Typedef struct
{
 Int num;
Char name[8];
Char sex[2];
Int age;
Int score;
}DataType
Typedef struct
{
 DataType data[Maxsize];
Int length;
}SeqList;
SeqList student;



2,顺序队列类型定义:

Cons tint maxsiz=20;
Typedef struct seqqueue
{
 DataType data[maxsize];
Int front, rear;
}SeqQue;
SeqQue SQ;
 


3,顺序栈:

Cons tint maxsize=6;
Typedef struct seqstack
{
DataType data[Maxsize];
Int
} SeqStk;

 

4,单链表类型定义:

Typedef struct node
{
DataType data;       //数据域
Struct nod* next;      //指针域
}Node, *LinkLIst;
 


例子:

 

Typedefstruct
{
Int num;      //学号
Char name[8];  //姓名
Char sex[2];   //姓别
Int age;//年龄
Int score;//入学成绩
}DataType//定义结点类型
Typedef Struct nod
{
 Datatype data; //数据域,代表上面多有的数据值的
Struct node *next; //指针域
}Node,*LinkList;  //Node是链表节点的类型
LinkList head;



5,栈的定义:

Cons tint stacksize=40;
Typedef struct  SQstack
{
Int data[stacksize];
Int top;
}SQStackTp;


 

6,链栈定义:

 

typedefstruct node
{
 DataType data;
Struct node * next;
} LkStk;
 
 


规律总结

 

对于这个类型定义分为两个链式的和非链式的,链式的有一个开始容量的定义,非链式的没有。

 Constint Mastsize=100; //非链式的一个定义
Typedef struct node    //node 是内部的一个,下面将去用
{
DataType data;        //数据域
Struct node*next;(struct nod * front,*next;)     //分为单链和双链,双链的画有头尾指针
}Node, * LinkList;                           //Node是下一个struct 的数据类型,*LinkList是整个表的头指针。


 

 

评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值