当前位置: 首页 > news >正文

商城版免费网站建站公司还行吗

商城版免费网站,建站公司还行吗,做网站 人员,快三彩票网站建设线性表是数据结构中最基本和简单的一个#xff0c;它是n的相同类型数据的有序序列#xff0c;我们也可以用c语言中的数组来理解线性表。 一、线性表声明 我们定义一个线性表的结构体#xff0c;内部有三个元素#xff1a;其中elem是一个指针#xff0c;指向线性表的头它是n的相同类型数据的有序序列我们也可以用c语言中的数组来理解线性表。 一、线性表声明 我们定义一个线性表的结构体内部有三个元素其中elem是一个指针指向线性表的头length记录线性表元素个数listsize记录线性表的总长度。 // // Created by 111 on 2024/11/15. //#ifndef TEST1_LINELIST_H #define TEST1_LINELIST_H#define OK 1 #define ERROR 0#define LIST_INIT_SIZE 30 //初始化线性表大小 #define LIST_INCREMENT 10 //线性表长度不够时每次动态增加的长度typedef struct {int *elem; //指向线性表的头int length; //线性表元素个数int listsize; //线性表总长度 }LineList;int initLineList(LineList *);int lineListInsert(LineList *,int,int);int lineListDelete(LineList *,int);int printLineList(LineList *);int freeLineList(LineList *);int lineListLocateElem(LineList *,int elem);#endif //TEST1_LINELIST_H二、线性表初始化 我们通过初始化函数进行线性表的空间申请一开始我们申请可以存有30个元素的线性表具体函数如下 int initLineList(LineList *L) {L-elem (int *)malloc(LIST_INIT_SIZE*sizeof(int)); //动态申请堆空间初始化30个元素if(!L-elem){printf(LineList allocate failed!); //申请失败提示错误推出程序exit(ERROR);}L-length 0; //记录元素个数L-listsize LIST_INIT_SIZE; //记录线性表总大小return OK; } 三、插入元素 插入元素我们通过指定位置进行插入如果插入位置超过元素最大位置1则抛错如果中间位置进行元素插入我们则需要将后面的元素进行后移。 int lineListInsert(LineList *L,int i,int newelem) {int *tmpaddr; //用来存放扩展后的线性表地址int *tmpdata; //用来存放临时元素的地址int *q;if(i1||iL-length1) //如果超过位置则报错return ERROR;if(L-lengthL-listsize){tmpaddr (int *)realloc(L-elem,(L-listsizeLIST_INCREMENT)*sizeof(int));//元素个数超过线性表最大大小则进行动态扩展if(!tmpaddr){printf(linesize reallocate failed!\n);exit(ERROR);}L-elem tmpaddr;//线性表新地址L-listsize LIST_INCREMENT;//线性表总大小该表}tmpdata (L-elemi-1);for(q (L-elemL-length-1);qtmpdata;--q) //从线性表最后一个元素开始进行元素后移*(q1) *q; //插入元素*tmpdata newelem;L-length;return OK; } 四、删除元素 删除一个元素后我们需要将后续的元素进行前移动确保线性表的连续 int lineListDelete(LineList *L,int index) {if(index1||(indexL-length)) //错误的位置返回ERROR{return ERROR;}int *tmpdel L-elemindex; //临时存放删除元素的后一个元素int *mp L-elem L-length -1; //指向最后一个元素for(tmpdel;tmpdelmp;tmpdel){ //从删除位置开始进行元素前移*(tmpdel-1) *tmpdel;}--L-length;return OK;} 五、元素定位 返回第一个匹配元素的位置如果都不匹配则返回0. int lineListLocateElem(LineList *L,int elem) {int i1;int *p L-elem;while(iL-length(*p)!elem)i;if(iL-length)return i;elsereturn 0; } 六、打印线性表 int printLineList(LineList *L) {int *p L-elem;for(int i 0 ;iL-length;i){printf(the %d element is %d\n,(i1),*(L-elemi));}return OK; } 七、释放空间 int freeLineList(LineList *L) {free(L-elem);return OK; }八、测试 我们在main函数中进行测试的编写验证上述函数的功能。 int main() {LineList l;initLineList(l);lineListInsert(l,1, 10);lineListInsert(l,2, 18);lineListInsert(l,2,20);printLineList(l);lineListDelete(l,2);printf(after the linelist deleted.....\n);printLineList(l);freeLineList(l);return 0; }
http://www.hkea.cn/news/14373611/

相关文章:

  • 单页面应用的网站湖南住建云网站
  • 网站规划与网页设计总结网站访问量大打不开
  • 怎样做百度网站推广策划公司广告费
  • 旅游网站设计与实现论文公众平台安全助手
  • 苏州公司网站建站游戏推广是干什么的
  • 网页设计与网站建设在线考试商城的网站统计如何做
  • 旅行社建设网站网站建设 教案
  • 视觉设计网站有哪些wordpress 324
  • 简述企业网站的建设流程打开上次浏览的网站模板
  • 建设银行重置网站查询密码百度收录查询工具
  • 绍兴专业做网站公司孝感有做网站的公司吗
  • 网站建设网站美工工作计划视频网站很难建设吗
  • 织梦网站做瀑布流方便30张女性人像摄影作品欣赏
  • 泉州网站seo公司上海外贸博览会
  • 海南高端建设网站广州的一起做网站
  • 青岛做网站公司有哪些安徽省城乡和建设厅网站
  • 网站做点线表格wordpress访问速度太慢
  • seo网站排名全选朋友要给我做网站
  • 网站建设的收费天眼查询企业信息系统
  • 做视频直播网站wordpress发号系统
  • 网站建设提案怎么写部队织梦网站模板免费下载
  • 做网站需要什么软件教程三类人不适合学编程plc
  • 好玩的网站源码安卓集成wordpress
  • 亿万网站做坏事小视频网站
  • seo网站优化插件做公众号试卷的网站
  • 贵州城乡住房建设网站wordpress中htaccess
  • 谷德设计网站企业网站手机端模板
  • 广西南宁网站建设有什么网站是可以做ui的
  • 老地方在线观看免费资源大全东莞seo网站管理
  • 中间商网站怎么做公司网站自己创建