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

建设企业网站价钱鹰潭市城乡建设局网站

建设企业网站价钱,鹰潭市城乡建设局网站,做原型的网站,企业所得税减免政策2023一、单向循环链表的描述 循环链表#xff1a;是另一种形式的链式存储结构。其特点是表中最后一个结点的指针域指向头节点#xff0c;整个链表形成一个环。 单向循环链表的操作和单链表操作基本一致#xff0c;差别在于#xff1a;当链表遍历时#xff0c;判别当前指针p是…一、单向循环链表的描述 循环链表是另一种形式的链式存储结构。其特点是表中最后一个结点的指针域指向头节点整个链表形成一个环。 单向循环链表的操作和单链表操作基本一致差别在于当链表遍历时判别当前指针p是否指向表尾结点的终止条件不同。在单链表中判别条件一般为p!NULL或p-next!NULL,而单向循环链表的判别条件为p!L或p-next!L。 二、单向循环链表存储结构 typedef int ElemType; //重定义数据域的数据类型 typedef struct LNode //定义单链表存储结构 {ElemType data; //结点的数据域struct LNode *next;//结点的指针域 }*LinkList; //LinkList为指向结构体LNode的指针类型 三、单向循环链表的操作 3.1 循环链表创建 LinkList Request_space() //在堆区申请一个结点空间 {LinkList node(LinkList)malloc(sizeof(struct LNode));if(NULLnode)return NULL;node-data0;node-nextnode;return node; } 3.2 循环链表遍历 int Output(LinkList L_list) //实现输出 {if(NULLL_list)return -1;LinkList pL_list;do{printf(%d ,p-data);pp-next;}while(p!L_list);puts();return 0; } 3.3 循环链表头插 LinkList insert_head(LinkList L_list,ElemType value) //实现头插 {LinkList nodeRequest_space();if(NULLnode)return L_list; if(NULLL_list){L_listnode;node-datavalue;}else{node-nextL_list-next;L_list-nextnode;node-dataL_list-data;L_list-datavalue;}return L_list; } 3.4 循环链表尾插 LinkList insert_rear(LinkList L_list,ElemType value) //实现尾插 {LinkList nodeRequest_space();node-datavalue;if(NULLL_list)L_listnode;else{LinkList rearL_list;while(rear-next!L_list)rearrear-next;rear-nextnode;node-nextL_list;}return L_list; } 3.5 循环链表头删 LinkList delete_head(LinkList L_list) //实现头删 {if(NULLL_list)return NULL;if(L_list-nextL_list){free(L_list);L_listNULL;}else{LinkList pL_list-next;L_list-datap-data;L_list-nextp-next;free(p);pNULL;}return L_list; } 3.6 循环链表尾删 LinkList delete_rear(LinkList L_list) //实现尾删 {if(NULLL_list)return NULL;if(L_list-nextL_list){free(L_list);L_listNULL;}else{LinkList rearL_list;while(rear-next-next!L_list)rearrear-next;free(rear-next);rear-nextL_list;}return L_list; } 3.7 循环链表解决约瑟夫环问题 int Joseph_loop(LinkList L_list,int n,int m) //单向循环链表实现约瑟夫环 {LinkList pL_list;for(int i0;in;i){for(int j0;jm-2;j){pp-next;}LinkList qp-next;p-nextq-next;printf(%d ,q-data);free(q);qNULL;pp-next;}return 0; } 四、多文件编辑实现单向循环链表操作 头文件 head.h #ifndef __HEAD_H__ #define __HEAD_H__#include stdio.h #include string.h #include stdlib.htypedef int ElemType; //重定义数据域的数据类型 typedef struct LNode //定义单链表存储结构 {ElemType data;struct LNode *next; }*LinkList;LinkList Request_space(); //在堆区申请一个结点空间 int Output(LinkList L_list); //实现输出 LinkList insert_head(LinkList L_list,ElemType value); //实现头插 LinkList insert_rear(LinkList L_list,ElemType value); //实现尾插 LinkList delete_head(LinkList L_list); //实现头删 LinkList delete_rear(LinkList L_list); //实现尾删 int Joseph_loop(LinkList L_list,int n,int m); //单向循环链表实现约瑟夫环#endif 自定义函数 fun.c #include head.h LinkList Request_space() //在堆区申请一个结点空间 {LinkList node(LinkList)malloc(sizeof(struct LNode));if(NULLnode)return NULL;node-data0;node-nextnode;return node; } int Output(LinkList L_list) //实现输出 {if(NULLL_list)return -1;LinkList pL_list;do{printf(%d ,p-data);pp-next;}while(p!L_list);puts();return 0; } LinkList insert_head(LinkList L_list,ElemType value) //实现头插 {LinkList nodeRequest_space();if(NULLnode)return L_list; if(NULLL_list){L_listnode;node-datavalue;}else{node-nextL_list-next;L_list-nextnode;node-dataL_list-data;L_list-datavalue;}return L_list; } LinkList insert_rear(LinkList L_list,ElemType value) //实现尾插 {LinkList nodeRequest_space();node-datavalue;if(NULLL_list)L_listnode;else{LinkList rearL_list;while(rear-next!L_list)rearrear-next;rear-nextnode;node-nextL_list;}return L_list; } LinkList delete_head(LinkList L_list) //实现头删 {if(NULLL_list)return NULL;if(L_list-nextL_list){free(L_list);L_listNULL;}else{LinkList pL_list-next;L_list-datap-data;L_list-nextp-next;free(p);pNULL;}return L_list; } LinkList delete_rear(LinkList L_list) //实现尾删 {if(NULLL_list)return NULL;if(L_list-nextL_list){free(L_list);L_listNULL;}else{LinkList rearL_list;while(rear-next-next!L_list)rearrear-next;free(rear-next);rear-nextL_list;}return L_list; }int Joseph_loop(LinkList L_list,int n,int m) //单向循环链表实现约瑟夫环 {LinkList pL_list;for(int i0;in;i){for(int j0;jm-2;j){pp-next;}LinkList qp-next;p-nextq-next;printf(%d ,q-data);free(q);qNULL;pp-next;}return 0; } 主函数 main.c #include head.h int main(int argc, const char *argv[]) {LinkList L_listNULL; //定义结点变量,注意定义时一定要指向NULLint n; //定义循环输入次数ElemType value; //定义数据域元素int seat; //定义元素位置printf(please enter n:);scanf(%d,n);for(int i0;in;i) //头插{printf(please enter a value:);scanf(%d,value);L_listinsert_head(L_list,value);}for(int i0;in;i) //尾插{ printf(please enter a value:);scanf(%d,value);L_listinsert_rear(L_list,value);}L_listdelete_head(L_list); //头删L_listdelete_rear(L_list); //尾删Output(L_list);//约瑟夫环int m;printf(please enter the number of people:);scanf(%d,n);printf(please enter the number you want to break:);scanf(%d,m);for(int i0;in;i) { L_listinsert_rear(L_list,i1);}Joseph_loop(L_list,n,m);return 0; }
http://www.zqtcl.cn/news/948690/

相关文章:

  • 电子商务网站建设新闻深圳坂田网站设计公司有哪些
  • 上海电子商城网站制作wordpress循环该分类子分类
  • 茶山做网站教育网站建设计划书
  • 成品门户网站源码免费海外网络加速器免费
  • 企业网站怎么建设公司深圳企业招聘信息最新招聘信息
  • 天津网站经营性备案下载网站上的表格 怎么做
  • 胶州企业网站设计十大互联网营销公司
  • 视频解析wordpresswordpress 优化版本
  • 柳州网站建设哪家便宜广东省建设厅三库一平台
  • 云南城市建设官方网站wordpress和织梦哪个好
  • 国外企业招聘网站专门做外贸的网站有哪些
  • 陕西交通建设集团网站营销公司是什么意思
  • 网站建设自建与租用区别杭州建设局网站官网
  • 广告公司企业介绍seo研究中心怎么样
  • 苏州网站建设熊掌岳阳做网站哪家好
  • 深圳网站制作公司报价单宝塔做两个网站6
  • 百度站长工具怎么查排名贵港网站制作
  • 运城个人网站建设学校网站建设目的
  • 住房城乡建设部门门户网站购物网站排名大全
  • 手机网站平台江门网站建设模板
  • 做本地网站需要什么资质百度多长时间收录网站
  • 网站建设公司使用图片侵权使用者有无责任夸克免费空间
  • 网站建设制作鸿运通做网站能用python吗
  • 站长源码之家Wordpress 新建标签
  • 太原网站建设详细策划如何建设网站简答题
  • 乡村生态旅游网站建设方案如何做网站的导航栏
  • wordpress百度百科网站开发 seo
  • 网站主机名wordpress主题修改底部版权
  • 网站官网怎么做龙岩iot开发福建小程序建设
  • 哪个学校设有网站开发专业北京有哪些网站公司