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

上海地区网站建设wordpress附件类型

上海地区网站建设,wordpress附件类型,重庆seo排名软件,上海展台搭建商目录 单链表 主函数test.c test1 test2 test3 test4 头文件函数声明SList.h 函数实现SList.c 打印SLPrint 创建节点CreateNode 尾插SLPushBack 头插SLPushFront 头删SLPopBck 尾删SLPopFront 易错点 本篇开始链表学习。今天主要是单链表OJ题目。 单链…目录 单链表 主函数test.c test1 test2 test3 test4 头文件函数声明SList.h 函数实现SList.c 打印SLPrint 创建节点CreateNode 尾插SLPushBack 头插SLPushFront 头删SLPopBck 尾删SLPopFront 易错点 本篇开始链表学习。今天主要是单链表OJ题目。 单链表 前面的博文我们讲了顺序表。顺序表的优势就是【物理空间的连续】就只需要一个指针指向开始位置用数组下标去访问即可。但是这也是它的劣势。当插入和删除数据需要挪动数据。 无论是【顺序表】还是【链表】里的数据任何类型都可。所以用typedef。 在开始阶段线性表可能是物理空间上连续【顺序表】可能是逻辑顺序上连续【链表】。链表的优势就是删除和插入数据不需要挪动空间可以一块一块的释放不会影响其他节点。链表每个节点都是独立的。 【链表】的种类很多今天先介绍【无头单项不循环链表】----【单链表】。 主函数test.c #includeSList.h int main() {SLNode* phead NULL;//结构体指针变量存放结构体的地址 头节点test1(phead);//测试尾插test2(phead);//测试头插test3(phead);//测试尾删test4(phead);//测试头删return 0; } test1 void test1(SLNode** pphead)//测试尾插 {SLPushBack(pphead, 10);SLPushBack(pphead, 20);SLPushBack(pphead, 30);SLPushBack(pphead, 40);SLPrint(*pphead); } test2 void test2(SLNode** pphead)//测试头插 {SLPushFront(pphead, 77);SLPushFront(pphead, 66);SLPushFront(pphead, 55);SLPushFront(pphead, 33);SLPrint(*pphead); } test3 void test3(SLNode** pphead)//测试头删 {SLPopFront(pphead);SLPopFront(pphead);SLPopFront(pphead);SLPrint(*pphead); } test4 void test4(SLNode** pphead)//测试尾删 {SLPopBack(pphead);SLPopBack(pphead);SLPrint(*pphead); } 头文件函数声明SList.h #pragma once #includestdio.h #includeassert.h #includestdlib.h 创建单链表 //创建单链表 typedef int SLNDataType;//单链表节点数据类型typedef struct SListNode//创建节点 {SLNDataType val;struct SListNode* next; }SLNode; 为什么 SListNode 还未创建好就可以在结构体内部使用这个 SListNode 了 因为next是一个结构体指针变量主体是指针变量无影响。但是如果是 struct SListNode next;不可以结构体嵌套结构体是不可以的。 打印数据 //打印数据 void SLPrint(SLNode* phead); 尾插 //尾插 void SLPushBack(SLNode** pphead, SLNDataType x); 头插 //头插 void SLPushFront(SLNode** pphead, SLNDataType x); 头删 //头删 void SLPopFront(SLNode** pphead); 尾删  //尾删 void SLPopBack(SLNode** pphead); 函数实现SList.c #includeSList.h 打印SLPrint 不要让phead移动 void SLPrint(SLNode* phead) {assert(phead);SLNode* tail phead;printf(phead-);while (tail-next ! NULL){printf(%d-, tail-val);tail tail-next;}printf(NULL);printf(\n); } 创建节点CreateNode //创建链表的节点---结构体 SLNode* CreateNode(SLNDataType x) {SLNode* newnode (SLNode*)malloc(sizeof(SLNode));if (newnode NULL){perror(malloc);exit(-1);//直接终止程序//return;}newnode-val x;newnode-next NULL;return newnode; } 尾插SLPushBack 二级指针的使用不然就会链接不起来出了函数栈帧局部变量就销毁了。改变外部的变量一定有一个解引用的操作多情况的考虑 //尾插 void SLPushBack(SLNode** pphead, SLNDataType x) {//assert(*pphead);SLNode* newnode CreateNode(x);//无节点if (*pphead NULL){*pphead newnode;}//多个节点else{SLNode* tail *pphead;while (tail-next ! NULL){tail tail-next;}tail-next newnode;}} 头插SLPushFront 代码书写的先后顺序二级指针  //头插 void SLPushFront(SLNode** pphead, SLNDataType x) {//assert(*pphead);SLNode* newnode CreateNode(x);newnode-next *pphead;*pphead newnode; } 头删SLPopBck 代码书写的先后顺序二级指针  //头删 void SLPopFront(SLNode** pphead) {assert(*pphead);SLNode* tail *pphead;*pphead (*pphead)-next;free(tail);tail NULL; } 尾删SLPopFront 多种情况的考虑  //尾删 void SLPopBack(SLNode** pphead) {assert(*pphead);//一个节点if ((*pphead)-next NULL){free(*pphead);*pphead NULL;}else{SLNode* tail *pphead;SLNode* prve tail;while (tail-next ! NULL){prve tail;tail tail-next;}prve-next NULL;free(tail);tail NULL;} }易错点 断言❌无节点/一个节点/多节点的考虑❌传值调用/传址调用二级指针使用❌记住要修改头节点头节点是结构体指针变量的指向必须用二级指针❌空间的释放不是释放指针变量释放的是指针指向的空间❌*pphead*pphead-next辨析❌野指针的诞生❌ 代码---------→【唐棣棣 (TSQXG) - Gitee.com】 联系---------→【邮箱2784139418qq.com】
http://wiki.neutronadmin.com/news/319208/

相关文章:

  • 网站建设属于前端还是后台简单网站搭建
  • 海山网站建设wordpress会员注册管理系统
  • 网站改版完成包包网站建设策划书
  • app网站如何做推广厦门市建设局网站 限价房
  • 手机免费创网站专做机票网站的软件公司
  • 网站建设南通科技馆门票网上预约
  • 潍坊做网站建设python 网站开发实例教程
  • 深圳有效网站制作哪家公司好做团购的网站有哪些
  • 使wordpress支持全局搜索济南seo关键词优化顾问
  • 棋牌网站搭建公司wordpress 底部
  • 绵阳微信网站中国万网登录入口
  • 百度打网站名称就显示 如何做乌兰察布做网站
  • 哈尔滨模板建站平台做网站的公司倒闭
  • 做网站怎么赚钱广告sem竞价托管
  • 博文阅读网站建设做网站设计的平台
  • 阿里云 wordpress 伪静态什么是淘宝seo
  • 做好网站建设总结企业网站 批量备案
  • 陕西省住房和建设厅网站10个神奇的.htaccess技巧(for wordpress)
  • 了解网站基本知识秀山微信网站建设
  • 南京网站排名做网站哪个软件好用
  • 做二手钢结构网站有哪些在线免费看电视剧的网站
  • wordpress百度站内搜索无忧网站优化
  • 学校后勤网站建设的作用前端做网站要会什么
  • 电子商务网站建设 试卷wordpress中文优化版
  • 网站开发的方式外贸建站推广公司
  • 临淄关键词网站优化培训中心北京手机模板建站
  • 个人建设网站服务器怎么解决方案wordpress编辑页面
  • 河南省住房建设厅网站建网站的步骤及方法
  • 建平县网站建设安阳哪里做360网站
  • 陕西建站贵阳市建设局网站