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

导购网站 转化率做全景的h5网站

导购网站 转化率,做全景的h5网站,如何制作完整网页,如何优化关键词搜索文章目录链表单链表尾插头插尾删第一种方式删除第二种头删查找pos之前插入pos位置删除pos后面插入pos位置后面删除链表 顺序表缺点: 空间不够了 需要扩容,但是扩容是有消耗的头部或中间位置需要插入或删除,需要挪动 ,但是挪动是…

文章目录

    • 链表
      • 单链表
        • 尾插
        • 头插
        • 尾删
          • 第一种方式删除
          • 第二种
        • 头删
        • 查找
        • 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 (*pphead==pos){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.yayakq.cn/news/848395/

相关文章:

  • 内部网站 建设目标教育网站前置审批
  • wordpress打开最快的网站宣传片制作公司简介
  • 外贸企业网站推广品牌推广名词解释
  • 绍兴市住房和城乡建设局网站那些网站可以接私活做
  • 品牌网站建设方案ppt网站色调搭配
  • 凡科做网站有什么用泉州做网站便宜
  • 宁夏干部网络教育培训学院seo互联网营销培训
  • 网站搜索框设计怎么制作小程序卖东西
  • 建筑工具网站wordpress图片文件夹更换
  • 郑州网站建设项目制作链接的小程序
  • 网站首页外链荆门网站建设 金键盘
  • 邹城网站建设zczwxx企业网站建设的征求意见
  • 昆山网站建设苦瓜网络昆明seo技术培训
  • 怎么制作网站教程电商杭州定制软件开发
  • 站酷网站源码网站建设与管理拼音
  • 网站上传用什么软件做视频格式哪些做调查问卷的网站
  • 李建忠 电子商务网站建设与管理 ppt承德平台
  • 大型大型网站建设53建筑人才网
  • 线上企业推广seo营销的策略有哪些
  • 可以免费打广告的网站做异形建筑的网站
  • 东莞做营销型网站的温州 做网站
  • 沈阳公司网站建设dwcc2018怎么做网站
  • 论述市场营销对网站设计的影响企业小程序注册
  • 做装修的业务网站做网站运营需要具备什么能力
  • 网站添加flv视频代码wordpress移动端m
  • 不买服务器做网站安徽seo优化
  • php网站开发 薪资 东莞惠州房产网
  • 网站名超链接怎么做热门搜索排行榜
  • 网站怎么做身份验证广州市花
  • 湖南建设部网站上海广告公司薪资