顺序表——顺序存储结构

技术顺序表——顺序存储结构 顺序表——顺序存储结构#includestdio.h#includestdbool.h#define MaxSize 20typedef int DataType;typed

顺序表——顺序存储结构

# includestdio.h

# includestdbool.h

#定义最大尺寸20

typedef int DataType

typedef结构

{

数据类型数据[MaxSize];

(同Internationalorganizations)国际组织长度;

} SqList

void Init_List(SqList * L,int DataType[],int n);//顺序表初始化

bool Insert_List(SqList * L,int pos,int x);//顺序表插入

bool Delete_List(SqList * L,int pos,int * x);//顺序表删除

bool Empty _ List(SqLiST * L);//判空

bool Full _ List(SqLiST * L);//判满

int Locate_List(SqList * L,int x);//按值查找

bool Get_List(SqList * L,int pos,int * x);//按位查找

int Length _ List(SqLiST * L);//顺序表长度

void Traverse _ List(SqLiST * L);//遍历线性表

int main()

{

SQL LiST L;

int x,val

int a[8]={12,32,43,55,34,76,81,59 };//定义数组

Init_List(L,a,8);

printf('\n遍历顺序表:');

遍历列表(L);

printf('\n线性表长度:%d\n ',Length _ List(L));

if(Insert_List(L,1,80))

{

printf('\n插入成功!\ n ');

printf('插入的元素:80 \ n ');

printf('位置:第一个位置\ n ');

}

其他

printf('\n插入失败!\ n ');

printf('遍历顺序表:');

遍历列表(L);

Delete_List(L,2,val);

printf('\n删除的元素:%d\n ',val);

printf('位置:第2个位置\ n ');

printf('遍历顺序表:');

遍历列表(L);

如果(定位列表(1,55))

{

printf('\n按值查找成功!\ n ');

printf('查找的元素是:55 \ n ');

printf('位置:第%d个位置\n ',Locate_List(L,55));

}

其他

printf('\n按值查找失败\ n ');

if(Get_List(L,2,x))

{

printf('\n按位查找成功\ n ');

printf('位置:第2个位置\ n ');

}

其他

printf('\n按位查找失败!\ n ');

printf('您查找的元素为:%d\n ',x);

printf('\n遍历顺序表:');

遍历列表(L);

返回0;

}

void Init_List(SqList * L,int DataType[],int n)

{

int I;

if(nMaxSize)

printf('存储空间不足!\ n ');

for(I=0;在;I){ 0

我数据[I]=DataType[I];

}

我长度=n;

返回;

}

bool Insert_List(SqList * L,int pos,int x)

{

int I;

如果(完整列表(左))

返回错误的

if(POS1 | | POSl-长度1)

返回错误的

对于(1=1-长度;i=posi -)

L-数据[我]=L-数据[I-1];

我数据[pos-1]=x;

我长度;

返回真;

}

bool Delete_List(SqList * L,int pos,int * val)

{

int I;

如果(空列表(左))

返回错误的

* val=L-数据[位置-1];

for(I=pos;表示“不”长度;(一)

L-数据[I-1]=L-数据[一];

我长度-;

返回真;

}

布尔空列表(SqList * L)

{

如果(L-长度==0)

返回真;

其他

返回错误的

}

bool Full_List(SqList * L)

{

如果(L-长度==MaxSize)

返回真;

其他

返回错误的

}

int Locate_List(SqList * L,int x)

{

int I;

for(I=0;表示“不”长度;(一)

{

if(x==L-数据[i])

返回一1;

}

返回0;

}

bool Get_List(SqList * L,int pos,int * x)

{

int I;

if(pos1 | | POSl-长度)

返回错误的

* x=L-数据[位置-1];

返回真;

}

int Length_List(SqList *L)

{

返回L-长度;

}

void Traverse_List(SqList * L)

{

int I;

for(I=0;表示“不”长度;(一)

printf('=',L-data[I]);

printf(' \ n ');

返回;

}

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/62065.html

(0)

相关推荐

  • 班门弄斧的主人公是谁,谁有《班门弄斧》的释字和翻译

    技术班门弄斧的主人公是谁,谁有《班门弄斧》的释字和翻译释义班:鲁班班门弄斧的主人公是谁,春秋时期鲁国人,著名的木匠。在鲁班门前舞弄斧子。
    比喻在行家面前卖弄本领,不自量力。
    出处唐·柳宗元《王氏伯仲唱和诗序》:“操斧于班

    生活 2021年10月25日
  • Oracle数据库产重启服务和监听程序怎么实现

    技术Oracle数据库产重启服务和监听程序怎么实现这篇文章主要介绍“Oracle数据库产重启服务和监听程序怎么实现”,在日常操作中,相信很多人在Oracle数据库产重启服务和监听程序怎么实现问题上存在疑惑,小编查阅了各式

    攻略 2021年12月11日
  • net动态调用wcf服务(wcf服务配置编辑器实现消息拦截)

    技术怎么对WCF异步调用进行服务操作本篇内容主要讲解“怎么对WCF异步调用进行服务操作”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么对WCF异步调用进行服务操作”吧!我将

    攻略 2021年12月14日
  • 如何解析LoRaWAN设备数据及开源MQTT SDK设备端模拟

    技术如何解析LoRaWAN设备数据及开源MQTT SDK设备端模拟这期内容当中小编将会给大家带来有关如何解析LoRaWAN设备数据及开源MQTT SDK设备端模拟,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文

    攻略 2021年10月22日
  • 嵌入式Linux Framebuffer怎么描点画线

    技术嵌入式Linux Framebuffer怎么描点画线这篇文章主要讲解了“嵌入式Linux Framebuffer怎么描点画线”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学

    攻略 2021年11月23日
  • 为什么需要日本服务器搭建电商网站

    技术为什么需要日本服务器搭建电商网站越来越多的企业正在考虑以在日本地区开展跨境电商业务,通过搭建一个独立商城网站来提供相应的产品或服务是相对比较有效的方式。它将帮助您提高在日本地区本地市场收益,并获得更多潜在客户和收入。

    礼包 2021年12月24日