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

怀化住建部网站wordpress引导页模板

怀化住建部网站,wordpress引导页模板,中英文双语企业网站,wordpress分类目录代码链表概念在现实世界中使用得很普遍。当我们使用 Spotify 播放队列中的下一首歌曲时#xff0c;我们学到的单链表的概念就开始发挥作用。但是要播放队列中的上一首歌曲到底可以做什么呢#xff1f; 在这篇博客中#xff0c;我们将了解与数据结构相关的另一个概念#xff0c…        链表概念在现实世界中使用得很普遍。当我们使用 Spotify 播放队列中的下一首歌曲时我们学到的单链表的概念就开始发挥作用。但是要播放队列中的上一首歌曲到底可以做什么呢  在这篇博客中我们将了解与数据结构相关的另一个概念即双向链表。我们还将讨论使用 C 语言和实时应用程序的实现。 什么是双向链表 链表是一种线性数据结构包含以顺序方式连接的节点。该节点包含三个字段即存储在该参考地址处的数据和指向该参考节点左侧和右侧的后继节点的两个指针。  左节点指针存储序列中前一个节点的内存地址右节点存储下一个节点的内存地址。我们在这里使用动态内存分配而不是数组以便可以在运行时根据执行的操作分配或取消分配内存大小。  在这个例子中头指向第一个节点。引用节点的左指针存储NULL最后一个节点的右指针也是如此。 为了对这个例子进行操作我们可以进一步进行相应的更改。  双向链表的实现 1、在前面插入节点 为了完成上述操作首先创建一个节点并使用动态内存分配内存。将头指向新节点并在左节点和右节点中存储 NULL 值。 void front_add(){//allocate memory using dynamic memory allocation.newnode - data NULL;newnode - prev NULL;newnode - next head;head newnode; } 2.删除最前面的节点 要从前面删除节点我们必须将引用地址的正确节点值存储在头部并释放第一个节点。  void front_del(){newnodehead;head head-next ;head-prev NULL;free(newnode); } 3. 在末尾插入节点 要在末尾添加节点我们必须遍历到末尾并将最后一个节点指向引用的新节点反之亦然。 void end_add(){//allocate memory to newnodenewnode - data item; // tempheadwhile(temp -next !NULL){temp temp-next;}temp-next newnode;newnode - prev temp;newnode- next NULL;} 4.删除末尾节点 要删除末尾的节点我们必须遍历链表并到达末尾。我们将使用指向最后一秒节点的指针。然后释放最后一个节点。 void rear_del(){while(temp - next!NULL){temp temp-next; //temphead}temp -prev- next NULL;free(temp); } 现在我们已经了解了基本操作现在我们将逐步使用 C 实现双向链表。 #includestdio.h #define MAX 5struct node{int data;struct node * prev;struct node * next; }; struct node *head; void front_add(); void front_del(); void rear_add(); void rear_del(); void display();int main(){int choice0;while(choice!6){printf(enter choice:\n);printf(\n1.front_add\n2.front_Del\n3.rear_add\n4.rear_del\n5.display\n6.exit);scanf(%d\n,choice);switch(choice){case 1:front_add();break;case 2:front_del();break;case 3:rear_add();break;case 4:rear_del();break;case 5:display();break;case 6:printf(exiting...\n);break;default:printf(unknown choice\n);}} } void front_add(){struct node* newnode;int item;newnode (struct node*)malloc(sizeof(struct node));printf(enter item value:\n);scanf(%d, item);if(head NULL){newnode - next NULL;newnode - prev NULL;newnode - data item;head newnode;}else{newnode - data item;newnode - prev NULL;newnode - next head;head-prev newnode;head newnode;} } void front_del(){struct node *newnode;if(head-next NULL){head NULL;free(head);printf(\nnode deleted\n);}else{newnodehead;head head-next ;head-prev NULL;free(newnode);printf(deleted\n);} } void rear_add(){struct node *temp,*newnode;int item;newnode (struct node*)malloc(sizeof(struct node));printf(enter item);scanf(%d, item);newnode - data item;temp head;while(temp -next !NULL){temp temp-next;}temp-next newnode;newnode - prev temp;newnode- next NULL;printf(inserted\n);} void rear_del(){struct node *temp;temphead;if(head-nextNULL){head NULL;free(head);printf(deleted\n);}else{while(temp - next!NULL){temp temp-next;}temp -prev- next NULL;free(temp);printf(deleted\n);} } void display(){struct node *temp;temp head;if(headNULL){printf(empty\n);}else{while(temp!NULL){printf(%d, temp-data);temp temp-next;}} }此代码将为您提供所需的输出 您有没有想过这些多人游戏是如何开发的玩家可以在重复的循环中获得机会这意味着最后一个玩家再次链接到第一个玩家以形成循环。 为了使这成为可能我们引入了另一个与链表相关的概念。在这种情况下循环链表很有用。 循环链表 在循环单链表中链表的最后一个节点包含指向链表第一个节点的指针。双链表和单链表都可以使用这个概念。 该列表与其他两个列表的唯一区别是最后一个节点的右指针指向第一个节点而头节点始终指向第一个节点本身。 结论 在我看来链表的概念在解决复杂问题时非常重要和有用。在经历各种场景时双向链表和循环单链表都是齐头并进的。我希望您喜欢阅读这个博客。请点赞并评论您对今天主题的看法。学习愉快
http://www.w-s-a.com/news/143283/

相关文章:

  • 建设一个类似淘宝的网站律师做推广宣传的网站
  • 东阳网站建设方案网站建设asp
  • 模板网站建设一条龙平面设计师招聘信息
  • 制作一个网站流程企业建设网站的母的
  • 九州建网站网页游戏平台代理
  • 培训课程网站网上下载的网站模板怎么用
  • 重庆山艺网站建设塘厦理工学校
  • 做网站的人叫什么软件玩具网站设计
  • 网站说服力营销型网站策划 pdf深圳有什么公司名称
  • 做物流的可以在那些网站找客户男生晚上正能量你懂我意思
  • 宁德市城乡住房建设厅网站教育机构logo
  • 做定制网站价格有网站了怎么做app
  • 做网站和制作网页的区别北京朝阳区最好的小区
  • 网站策划 ppt北京装修公司排名推荐
  • 郑州网站建设公司哪家专业好如何注册一家公司
  • 证券投资网站做哪些内容滨州论坛网站建设
  • 重庆网站建设公司模板广东佛山
  • 中展建设股份有限公司网站做网站备案是什么意思
  • 石家庄网站建设接单wordpress功能小工具
  • 有没有专门做网站的网站镜像上传到域名空间
  • 网站建设中 windows买域名自己做网站
  • 设计英语宁波seo做排名
  • 奉贤网站建设上海站霸深圳几个区
  • c#做网站自已建网站
  • 成都地区网站建设网站设计类型
  • 如何做网站结构优化北京响应式网站
  • 出售源码的网站威海住房建设局网站
  • 网站建设补充报价单网站建设 技术指标
  • 做网站费用分摊入什么科目做网络网站需要三证么
  • 房屋备案查询系统官网杭州排名优化软件