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

后台系统免费模板网站wordpress文章末尾加上相关文章

后台系统免费模板网站,wordpress文章末尾加上相关文章,网站页面图片尺寸,网站建设具体运算链表是数据结构中的一个基本概念#xff0c;它是线性表的一种实现。链表与顺序表#xff08;基于数组的线性表#xff09;不同#xff0c;链表的元素不需要在内存中连续存储。链表的每个元素由一个节点来表示#xff0c;每个节点都有一个数据部分和一个指针部分。 以下是…        链表是数据结构中的一个基本概念它是线性表的一种实现。链表与顺序表基于数组的线性表不同链表的元素不需要在内存中连续存储。链表的每个元素由一个节点来表示每个节点都有一个数据部分和一个指针部分。 以下是链表的几种基本类型 1. 单链表:     - 在单链表中每个节点包含两部分一个是数据部分另一个是指向下一个节点的指针。     - 最后一个节点的指针部分指向NULL表示链表的结束。 以下是单链表节点的简单C语言表示 typedef struct Node {int data;           // 数据部分struct Node* next;  // 指向下一个节点的指针 } Node; 下面是单链表的基本操作本次申请的单链表为有空头链表头节点数据域为空指针域指向下一个节点也可以易申请无空头链表。 #include stdio.h #include stdlib.h typedef int data_t;//构造链表节点类型 typedef struct node{data_t data;//保存数据的数据域struct node*next;//保存下一个节点的地址 } linklist ;//创建链表的头节点 linklist* create_linklist(); //判空 int linklist_is_emtpy(linklist * head); //求元素个数 int get_num_linklist(linklist* head); //按位置插入 int insert_by_pos_linklist(linklist* head,int pos,data_t val); //读数据 int printf_linklist(linklist*head);int main() { linklist *headcreate_linklist();for (int i 0; i 5; i){insert_by_pos_linklist(head,i,i1);}printf_linklist(head);return 0; }//读数据 int printf_linklist(linklist*head) {if(headNULL) return -1;if(head-next-data-1) return -1;while (NULL!head-next){printf(%d ,head-next-data);headhead-next;}printf(\n);return 0; }//创建链表的头节点 linklist* create_linklist() {linklist*head(linklist*)malloc(sizeof(linklist));if(NULLhead) return NULL;head-nextNULL;head-data-1;return head; } //判空 int linklist_is_emtpy(linklist * head) {if(NULLhead) return -1;return ((head-nextNULL)?1:0); } //求元素个数 int get_num_linklist(linklist* head) {//判headif(NULLhead) return -1;linklist*phead-next;//pheadint num0;while (p!NULL)//p-next!NULL{num;pp-next;}return num; } //按位置插入 int insert_by_pos_linklist(linklist* head,int pos,data_t val) {if (headNULL) return -1;//判断位置合法性if(pos0||posget_num_linklist(head)) return -1;//准备新节点linklist* new(linklist*)malloc(sizeof(linklist));new-dataval;new-nextNULL;//先指向pos-1的位置linklist*phead;while (pos--) pp-next;//准备链接new-nextp-next;p-nextnew;return 0; } 2.双链表:     - 双链表的每个节点有两个指针一个指向下一个节点另一个指向前一个节点。     - 这使得从两个方向遍历链表都变得可能。 3. 循环链表:     - 循环链表与单链表相似但其最后一个节点不是指向NULL而是指回到第一个节点。     - 这种结构形成了一个循环。 4. 双向循环链表:     - 这是双链表和循环链表的结合体。每个节点都有两个指针一个指向前一个节点另一个指向下一个节点。     - 最后一个节点的下一个指针指向第一个节点而第一个节点的前一个指针指向最后一个节点。 链表具有以下主要优点 - 动态大小链表的大小可以在运行时动态更改而无需预先分配或定义最大长度。 - 插入和删除操作与数组相比链表中的元素可以更容易地插入或删除不需要移动其他元素。 缺点 - 访问速度链表不允许随机访问要访问一个节点可能需要从头节点开始遍历链表直到找到所需的节点。 - 更多的内存使用由于每个节点都需要额外的指针来存储下一个节点的地址因此链表使用的内存比数组更多。 - 不利于缓存链表的非连续内存存储可能不如数组那样利于CPU缓存。 在某些情况下链表可能是最佳选择当元素的插入和删除操作比元素的访问更为频繁时。
http://www.yutouwan.com/news/296022/

相关文章:

  • 阿里云里做网站能上百度首页么免费博客网站
  • 网上如何建网站金融公司网站模板
  • 建设部网站官网证书查询网络营销与传统营销有哪些区别
  • 网站被镜像怎么办云网站制作的流程
  • 云鼎大数据888元建站泰州网站建设服务公司
  • 电子商务网站系统规划报告asp网站做消息提醒功能
  • 江西建设三类人员网站网站关键词快速排名服务
  • 菏泽营销网站建设公司网络营销的三大基础
  • 低价网站建设顺德平面设计师必看的网站
  • 宜春网站制作最近的国际新闻大事件
  • 建设网站网络公司wordpress设置为中文
  • 小辣椒昆明网站开发做个平台网站怎么做的
  • destoon 手机网站模板网络推广公司介绍
  • 网站建设开发哪家质量好如何设立官方网站
  • 广州网捷网站建设技术有限公司开源镜像网站开发
  • 网站建设商标注册多少类目深圳软件外包公司排行榜
  • 网站开发中的抓包工具赣州模板建站开发
  • 中国建设工程标准化协会网站sql数据库添加网站
  • 企业组织网站建设方案网站建设对帮助信息的设置
  • 网站建好了 如何推广wordpress安装流程
  • 用自己的名字做网站域名最好用的设计网站
  • 网络公司给我做网站我有没有源代码版权吗免费开源cms内容管理系统
  • 网站后台添加内容网页不显示大象影视传媒制作公司
  • 长治做网站公司网站顶部展出的大幅广告
  • 网站建设与运营策划书iis 修改默认网站
  • 重庆建网站哪家售后服务比较好宁波网络推广平台
  • 广州自助网站制作合肥建设工程市场价格信息网
  • 网站开发综合实训报告域名网站有哪些
  • 工信部网站备案查不到甘肃酒泉建设银行网站
  • 设计好的商城网站建设网络公司网站快速排名技巧