首页 > 其他 > 详细

线性表——顺序存储结构之静态链表

时间:2018-05-10 14:07:59      阅读:137      评论:0      收藏:0      [点我收藏+]

  引言:C语言中具有的指针能力,可以使它非常容易地操作内存中的地址和数据。后来的面向对象语言,如Java,C#等,虽然没有使用指针,但由于启动了对象引用机制,从某种角度也间接实现了指针的某些作用。但是对于一些早期编程高级语言:Basic、fortran等,不存在指针。在没有指针的情况下,要想使用链表,就要用到静态链表了。

  用数组描述的链表称为静态链表(游标实现法) 。

  那么怎么实现呢?

  首先,我们让数组中的元素都是由两个数据域组成,data和next。data用来存放元素,next相当于链表中的next指针,用来存放元素的后继在数组中的下标。

  在定义结构体之前,先进行准备工作:

 

1 #define MAX 100                    //假设此静态链表的最大长度是100
2 #define true 1             //返回值,true为真         
3 #define false 0;            //返回值,false为假
4 typedef int ElemType;         //存放数据元素的数据类型,这里设置为int类型
5 typedef int Boolean;         //伪装成Java代码的boolean类型,返回1相当于True,返回0相当于返回false

 

 

 

  结构体实现如下:

1 typedef struct space{
2     ElemType data;   //存放数据元素
3     int next;        //存放元素的后继在数组中的下标
4 }array[MAX];        

 

 

 

  

  

线性表——顺序存储结构之静态链表

原文:https://www.cnblogs.com/tonbby/p/9019117.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!