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

秀网站模板凡客设计

秀网站模板,凡客设计,企业营销的目的,价格低廉怎么换个说法单链表是我们学习数据结构时必不可少的部分#xff0c;但也由于指针的参与变得更加复杂#xff0c;这篇文章学习完之后可以更好地理解与掌握链表结构 注意#xff1a; 数据结构中#xff0c;不在乎菜单的创建#xff0c;注重的是功能的实现#xff1b;菜单的创建会影响我… 单链表是我们学习数据结构时必不可少的部分但也由于指针的参与变得更加复杂这篇文章学习完之后可以更好地理解与掌握链表结构 注意 数据结构中不在乎菜单的创建注重的是功能的实现菜单的创建会影响我们的调试 目录 结构体的创建动态申请节点打印尾插头插尾删头删链表查找链表插入某节点链表删除某节点 结构体的创建 这里要注意typedef的灵活使用可以更方便的使用与修改结构体不必牵一发而动全身 typedef int SLTDateType; typedef struct SListNode {SLTDateType data;struct SListNode* next; }SListNode;动态申请节点 在我们前插或者尾插时需要一个新的结点故我们需要一个申请节点的函数帮助我们同时我们需要返回这个地址否则将会内存泄漏 SListNode* BuySListNode(SLTDateType x) {SListNode* newnode (SListNode*)malloc(sizeof(SListNode));if (newnode NULL){perror(malloc);exit(-1);}newnode-data x;newnode-next NULL;return newnode; }打印 打印可以很好的帮助我们检查我们写的程序有无错误 void SListPrint(SListNode* plist) {SListNode* cur plist;while (cur){printf(%d-, cur-data);cur cur-next;}printf(NULL\n); }尾插 单链表尾差与顺序表尾差完全不一样要知道单链表在创建头结点时SListNode* ps NULL; 我们发现创建的头结点是一个指针而我们尾插时如果是第一个元素就会改变ps的值而改变一个指针的值需要传入指针的地址故 void SListPushBack(SListNode** pplist, SLTDateType x) //传入二级指针可以改变ps的值 {SListNode* newnode BuySListNode(x);if (*pplist NULL){*pplist newnode;}else{SListNode* cur *pplist;while (cur-next ! NULL){cur cur-next;}cur-next newnode;} }头插 与尾插同理需要二级指针 void SListPushFront(SListNode** pplist, SLTDateType x) {SListNode* newnode BuySListNode(x);newnode-next *pplist;*pplist newnode; }尾删 void SListPopBack(SListNode** pplist) {assert(*pplist);SListNode* cur *pplist;if (cur-next NULL){*pplist NULL;}else{while (cur-next-next ! NULL){cur cur-next;}free(cur-next);cur-next NULL;} }头删 void SListPopFront(SListNode** pplist) {assert(*pplist);SListNode* cur (*pplist)-next;free(*pplist);*pplist cur; }链表查找 SListNode* SListFind(SListNode* plist, SLTDateType x) {assert(plist);SListNode* cur plist;while (cur-next){if (cur-data x){return cur;}cur cur-next;}return NULL; }(插入,删除与查找通常是配套使用 链表插入某节点 单链表插入时只能向后插入因为单链表只能找到后边的节点却无法找到前边的节点故链表的形态多种多样适用各种场景 void SListInsertAfter(SListNode* pos, SLTDateType x) {SListNode* newnode BuySListNode(x);newnode-next pos-next;pos-next newnode; }链表删除某节点 void SListEraseAfter(SListNode* pos) {assert(pos-next);SListNode* cur pos;SListNode* tmp pos-next;cur-next cur-next-next;free(tmp); }欢迎讨论有问题可以及时找我沟通每天25h高强度冲浪
http://www.yutouwan.com/news/332615/

相关文章:

  • 做素材网站赚钱吗wordpress悬浮电话插件
  • 网站建设辶首选金手指十五建设一个企业网站要多少钱
  • 台州网站建设技术外包后台管理系统页面模板
  • 合肥网站运营丹灶网站制作
  • 公司如何建设一个网站接外贸单的平台
  • 做网站哪个地方需要钱HTML转WordPress主题
  • 网站建设列表网杭州建设局
  • 福清营销型网站建设方案网站建设会计分录
  • 住房和城乡建设部网站办事大厅里边国内永久免费crm系统app
  • 广告投放网站平台中铁建设门户网登录入口在哪
  • 海派虫网站推广软件如何自己设计一个网页
  • 网站建设快速便宜个人注册域名和公司注册域名区别
  • 学网站制作企业微网站怎么做
  • 敦煌网的网站推广方式全国工程信息网
  • 公司网站开发怎么做网站设置手机版
  • 睢宁做网站二级网站建设思路
  • 地方门户网站推广方法有那些wordpress 音乐主题
  • 以前在线做预算的网站thinkphp仿wordpress
  • 怎样做网站全屏代码广州越秀区租房信息网
  • 良乡网站建设公司绵阳网站建设哪家好
  • 广州网站建设公司好吗北京装修公司怎么选
  • 最好的手机资源网站网站做几个域名比较好
  • 凡科做的网站能被收录吗电商网站开发前景
  • 网站页面相似度检测上海网站建设服务站霸网络
  • 多个网站优化怎么做互联网加盟
  • 宁波网站建设 泊浮科技河源市seo推广
  • 京东网站是刘强冬自己做的吗无锡网站建设收费
  • 湛江专业官网建站在线课程设计
  • 携程网站开发wordpress第一篇文章
  • 免费下载建筑图纸的网站百度app下载安装官方免费下载