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

网站建设怎么谈要做网站

网站建设怎么谈,要做网站,潍坊住房公积金贷款额度,杭州企业网站建设 哪里好文章目录链表单链表尾插头插尾删第一种方式删除第二种头删查找pos之前插入pos位置删除pos后面插入pos位置后面删除链表 顺序表缺点#xff1a; 空间不够了 需要扩容#xff0c;但是扩容是有消耗的头部或中间位置需要插入或删除#xff0c;需要挪动 #xff0c;但是挪动是… 文章目录链表单链表尾插头插尾删第一种方式删除第二种头删查找pos之前插入pos位置删除pos后面插入pos位置后面删除链表 顺序表缺点 空间不够了 需要扩容但是扩容是有消耗的头部或中间位置需要插入或删除需要挪动 但是挪动是有消耗的避免频繁扩容 一次一般都是去按倍数去扩2倍可能存在一定的空间浪费 我们采用链表解决问题 顺序表优点 支持随机访问 链表优点 按照需求申请空间不用了就释放空间更加合理的运用空间头部中间插入或删除数据 不需要挪动数据不存在空间浪费 缺点 每插入一个数据都需要存一个指针去链接后面的数据节点 不支持随机访问用下标直接访问第i个 arr[ i ] ) 单链表 typedef struct SListNode // 单链表 {SLDataType data;struct SListNode* next; }SLTNode; //单链表类型 void SListPrint(SLTNode* phead) {SLTNode* cur phead;while (cur ! NULL){printf(%d-, cur-data);cur cur-next;} }尾插 尾插的本质是原来的尾节点需要存储新的尾节点地址 void SListPushBack(SLTNode** pphead , SLDataType x) // 尾插 { //插入SLTNode* newnode (SLTNode*)malloc(sizeof(SLTNode));newnode-data x;newnode-next NULL;if (*pphead NULL) //链表中一个节点都没有就不用去找尾{*pphead newnode;}else{//找到尾节点SLTNode* tail *pphead;while (tail-next ! NULL){tail tail-next;}tail-next newnode;}}头插 SLTNode * BuySingListNode(SLDataType x)//创建节点 {SLTNode* newnode (SLTNode*)malloc(sizeof(SLTNode));newnode-data x;newnode-next NULL;return newnode; } void SListPushFront(SLTNode** pphead, SLDataType x) // 头插 {//创建节点SLTNode* newnode BuySingListNode(x);newnode-next *pphead;*pphead newnode; }尾删 第一种方式删除 void SListPopBack(SLTNode** pphead) // 尾删 {assert(*pphead ! NULL); //头指针是否为空//只有一个节点if ( (*pphead)-next NULL){free(*pphead);*pphead NULL;}//两个或两个以上的节点else{SLTNode* p NULL;//找尾节点SLTNode* tail *pphead;while (tail-next ! NULL){p tail;//p指针记录倒数第二个节点 并且将节点置空tail tail-next;}free(tail);//删除tail NULL;p-next NULL;}}第二种 void SListPopBack(SLTNode** pphead) // 尾删 {assert(*pphead ! NULL); //头指针是否为空//只有一个节点if ( (*pphead)-next NULL){free(*pphead);*pphead NULL;}else //不创建临时变量p的方式去尾删{//找尾节点SLTNode* tail *pphead;while (tail-next-next){tail tail-next;}//删除free(tail-next);tail-next NULL;}}头删 void SingleListPopFront(SLTNode** pphead) {assert(*pphead);SLTNode* first *pphead;*pphead first-next;free(first);first NULL;}查找 int SingleListFind(SLTNode* phead, SingleListDataType x) {SLTNode* cur phead;while (cur){if (cur-data x){return cur;}cur cur-next;}return NULL;}pos之前插入 void SingleListInsert(SLTNode** pphead, SLTNode* pos, SingleListDataType x) {assert(pos);assert(pphead);//只有一个节点相当于头插if (*pphead pos){SingleListPushFront(pphead ,x);}else//多个节点{//找到pos的前一个位置SLTNode* prev *pphead;while (prev-next ! pos){prev prev-next;}SLTNode* newnode BuySingListNode(x);prev-next newnode;newnode-next pos;} }pos位置删除 void SingleListErase(SLTNode** pphead, SLTNode* pos) {assert(pphead);assert(pos);//只有一个节点相当于头删if (*ppheadpos){SingleListPopFront(pphead);}// 多个节点else{//找到pos的前一个位置SLTNode* prev *pphead;while (prev-next ! pos){prev prev-next;}prev-next pos-next;free(pos);pos NULL;}}pos后面插入 void SingleListInsertAfter(SLTNode* pos, SingleListDataType x) //pos后面插入 {assert(pos);SLTNode* newnode BuySingListNode(x);newnode-next pos-next;pos-next newnode; }pos位置后面删除 void SingleListEraseAfter(SLTNode* pos) // 从pos后面删除 {assert(pos);assert(pos-next);SLTNode* del pos-next;pos-next del-next;free(del);del NULL; }如果你觉得这篇文章对你有帮助不妨动动手指给点赞收藏加转发给鄃鳕一个大大的关注 你们的每一次支持都将转化为我前进的动力
http://www.dnsts.com.cn/news/20476.html

相关文章:

  • 做网站推广需要多少钱高端网站建设步骤
  • c语言做网站吗金蝶erp软件
  • 织梦高端html5网站建设工作室网络公司网站模板凡科企业网站如何建设
  • 做网站的公司怎么推销四子王旗建设局网站
  • 壹像素网站帝国网站认证码
  • 建筑工程网上流程工作失误随州seo推广
  • 湖北金扬建设网站软件企业
  • 电子商务网站管理系统网站建设 职责
  • 山东外贸建站平面设计模板素材网站
  • 宝安建设网站用狐狸做logo的网站
  • 中国建设银行总行官方网站jsp电子商务网站建设实验
  • 重庆做网站泉州公司南宁百度seo排名价格
  • 金顶街网站建设西安做软件的公司
  • 科院公司网站建设目标是什么计算机大专学历有用吗
  • 桂林网站优化公司网站跟客户端推广怎么做
  • 国内做网站的龙头企业调用wordpress搜索代码
  • 广州网站建设大公司排名wordpress.html
  • 静态做网站河南省建设厅网站资质平移办法
  • vue做响应式网站我要表白网站
  • php网站后台忘记密码昌邑营销型网站建设
  • 网站备案ip地址wordpress摄影公司
  • 网站描述案例黄埔做网站的公司
  • 网站排队队列怎么做电脑公司网站模板
  • 哪个网站使用vue 做的录像网站怎么做
  • 网站设计平台大连建设网节能办公室网站
  • 两人合伙做网站但不准备开公司如何恢复wordpress
  • 网站改版是什么意思网站管理建设落实报告
  • 网站运营与管理实验报告个人做搜索引擎网站违法吗
  • wordpress带轮播企业站主题谷歌官方网站注册
  • 哪家房屋设计公司网站wordpress维基主题