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

php完整网站开发案例四川华地建设工程公司网站

php完整网站开发案例,四川华地建设工程公司网站,东莞互联网招聘,中国建筑人才信息网一、插入操作 按位序插入#xff08;带头结点#xff09;#xff1a; ListInsert(L,i,e):插入操作。在表L中的第i个位置上插入指定元素e。 typedef struct LNode{ElemType data;struct LNode *next; }LNode,*LinkList;//在第i 个位置插插入元素e (带头结点) bool Li…一、插入操作 按位序插入带头结点 ListInsert(L,i,e):插入操作。在表L中的第i个位置上插入指定元素e。 typedef struct LNode{ElemType data;struct LNode *next; }LNode,*LinkList;//在第i 个位置插插入元素e (带头结点) bool ListInsert(LinkList L, int iElemType e){if( i1)return false;LNode *p; //指针p指向当前扫描到的结点int j0; //当前p指向的是第几个结点p L; //L指向头结点头结点是第0个结点(不存数据) while (p!NULL ji-1){ //循环找到第i-1个结点pp-next;j; }if(pNULL) //i值不合法return false; LNode *s (LNode *)malloc(sizeof( LNode) ) ; s-data e; s-nextp-next; p-nexts; //将结点s连到p之后 return true; //插入成功 }注意上述代码s-nextp-next与p-nexts不能颠倒。 按位序插入不带头节点 ListInsert(L,i,e):插入操作。在表L中的第i个位置上插入指定元素e。 typedef struct LNode{ElemType data;struct LNode *next; }LNode,*LinkList;//在第i 个位置插插入元素e (带头结点) bool ListInsert(LinkList L, int iElemType e){if( i1)return false;if(i1){ //插入第一个节点的操作与其他节点操作不同 LNode *s ( LNode *)malloc(sizeof( LNode) ) ;s-data e;s-nextL;Ls; //头指针指向新结点return true; } LNode *p; //指针p指向当前扫描到的结点 int j1; //当前p指向的是第几个结点 p L; // p指向第1个结点注意:不是头结点)while (p!NULL ji-1){ //循环找到第i-1个结点pp-next;j; }if(pNULL) //i值不合法return false; LNode *s (LNode *)malloc(sizeof( LNode) ) ; s-data e; s-nextp-next; p-nexts; //将结点s连到p之后 return true; //插入成功 }指定节点的后插操作 typedef struct LNode{ElemType data;struct LNode *next; }LNode,*LinkList;//后插操作:在p结点之后插入元素e bool InsertNextNode ( LNode *p,ElemType e){if ( pNULL)return false;LNode *s ( LNode *)malloc(sizeof( LNode) ) ;if (sNULL) //内存分配失败return false; s-data e; //用结点s保存数据元素e s-nextp-next; p-nexts; //将结点s连到p之后 return true; }指定节点的前插操作 //前插操作:在p结点之前插入元素e bool InsertPriorNode (LNode *p,ElemType e)无法找到他的前驱节点可以传入头指针 //前插操作:在p结点之前插入元素e bool InsertPriorNode ( LinkList L,LNode *p,ElemType e)但如果不能传入头指针上述方法就不能使用依然无法解决问题。 可以申请一个新的节点s作为p的后继节点把p中的数据复制到s中再把插入的数据放到p中完成前插操作。如下图所示 //前插操作:在p结点之前插入元素e bool InsertPriorNode (LNode *p,ElemType e){if ( pNULL)return false;LNode *s ( LNode *)malloc(sizeof( LNode ) ) ;if ( sNULL) //内存分配失败return false;s-nextp-next;p-nexts; //新结点s 连到p之后s-datap-data; //将p中元素复制到s中p-datae; // p中元素覆盖为ereturn true; }二、删除操作 按位序删除带头结点 ListDelete(L,i,e):删除操作。删除表L中第i个位置的元素并用e返回删除元素的值。 typedef struct LNode{ElemType data;struct LNode *next; }LNode,*LinkList;bool ListDelete( LinkList L, int i,ElemType e){if(i1)return false;LNode *p; //指针p指向当前扫描到的结点int j0; //当前p指向的是第几个结点p L; //L指向头结点头结点是第0个结点(不存数据) while (p !NULL ji-1){ //循外找到第i-1个节点pp-next;j; } if( pNULL) //i值不合法return false; if( p-next NULL) //第i-1个结点之后已无其他结点return false; LNode *qp-next; //令q指向被删除结点 e q-data; //用e返回元素的值 p-nextq-next; //将*q结点从链中“断开 free(q); //释放结点的存储空间 return true; //删除成功 }指定节点的删除 //删除指定结点p bool DeleteNode ( LNode *p)方法1:传入头指针循环寻找p 的前驱结点 方法2:类似于结点前插的实现 //删除指定结点p bool DeleteNode ( LNode *p){if (pNULL)return false;LNode *qp-next; //令q指向*p的后继结点p-datap-next-data; //和后继结点交换数据域p-nextq-next; //将*q结点从链中“断开”free(q); //释放后继结点的存储空间return true; }
http://www.tj-hxxt.cn/news/233426.html

相关文章:

  • 租赁公司网站源码新媒体运营需要具备哪些能力
  • 在常州 做兼职上什么网站模板网站 怎么做优化
  • 为什么用asp做网站网站制作排版注意事项
  • 帮忙做ppt赚钱的网站辽阳银梦网站建设
  • 山西企业模板建站服务营销
  • 中国城乡与住房建设部网站装修设计图网站排名
  • 城市分站cmswordpress加速之gzip
  • php做小公司网站用什么框架厦门建设局网站
  • 宁波seo推广推荐公司aso优化技术
  • 长春建站怎么做cf小号自助购买网站
  • 网站整体地图怎么做做网站是否用数据库
  • 网站建设课设总结自助建网站哪个便宜
  • h5模板网站免费有哪些做兼职的设计网站有哪些
  • 深圳网站设计兴田德润简介wordpress需要备案
  • dede网站搬家更换空间重新安装普通话考试最后一题万能模板
  • 2014 网站建设wordpress加文字水印
  • 遂宁网站建设跨境o2o网站建设方案
  • 国外公司建站系统wordpress mylife
  • 网站充值功能怎么做在线考试系统网站开发
  • 拼多多网站建设框架图可以做外贸私单的网站
  • 网站推广无锡番禺网站建设番禺网络营销
  • 济南章丘网站建设响应式网站布局
  • 电子商务网站设计心得一单一结手机兼职
  • 普陀区网站建设前端wordpress文章编辑器可视化
  • 广州h5网站开发wordpress联系我们无法发邮件
  • 中山网站模板南京logo设计公司
  • 免费注册二级域名的网站自己服务器建网站
  • 南阳微网站建设跨境电商免费开店的有哪些
  • 龙岗网站-建设深圳信科手机网站的网址是什么原因
  • 手机网站广告代码深圳公共资源交易中心