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

亿网行网站建设网络推广与推广

亿网行网站建设,网络推广与推广,响应式网站和传统网站异同,wordpress 视频 去广告插件下载目录 链表的概念和结构 单链表的实现 申请新结点 打印 尾插 头插 尾删 头删 ​编辑 查找 在pos位置前插入元素 在pos位置后插入元素 删除pos位置的元素 删除pos位置之后的位置的元素​编辑 完整代码 SListNode.h SListNode.c 链表的概念和结构 链表是一种物理存储…

目录

链表的概念和结构

单链表的实现

申请新结点

打印

尾插

头插

 尾删

头删

 ​编辑

 查找

在pos位置前插入元素 

 在pos位置后插入元素

删除pos位置的元素 

 删除pos位置之后的位置的元素​编辑

完整代码

SListNode.h

 

SListNode.c


链表的概念和结构

链表是一种物理存储上非连续,非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的

链式结构逻辑连续,物理不一定连续

单链表的实现

无头 单向 非循环链表

申请新结点

打印

尾插

 

头插

 

 尾删

 

头删

 

 

 查找

在pos位置前插入元素 

 ​​​​

 

 在pos位置后插入元素

删除pos位置的元素 

 

 删除pos位置之后的位置的元素

完整代码

SListNode.h

 

#include <stdio.h>
#include <stdlib.h>
#include <assert.h>typedef int SLTDataType;typedef struct SListNode
{SLTDataType data;struct SListNode* next;
}SLTNode;SLTNode* BuySListNode(SLTDataType x);     //申请一个结点void SListNodePrint(SLTNode* plist);      //打印void SListPushBack(SLTNode** pplist, SLTDataType x);    //尾插void SListPushfront(SLTNode** pplist, SLTDataType x);    //头插void SListPopBack(SLTNode** pplist);    //尾删void SListPopfront(SLTNode** pplist);    //头删SLTNode* SListFind(SLTNode* plist, SLTDataType x);        //查找void SListInsert(SLTNode** pplist, SLTNode* pos, SLTDataType x);    //在pos位置前插入元素void SListInsertAfter(SLTNode* pos, SLTDataType x);   //在pos位置后插入元素void SListErase(SLTNode** pplist, SLTNode* pos);     //删除pos位置前的元素void SListEraseAfter(SLTNode* pos);          //删除pos位置之后的位置的元素

SListNode.c

#define _CRT_SECURE_NO_WARNINGS 1#include "SListNode.h"SLTNode* BuySListNode(SLTDataType x)            //申请一个新结点
{SLTNode* newnode = (SLTNode*)malloc(sizeof(SLTNode));if (newnode == NULL){perror("malloc failed");exit(-1);}newnode->data = x;newnode->next = NULL;return newnode;
}void SListNodePrint(SLTNode* plist)      //打印
{SLTNode* cur = plist;while (cur){printf(" %d ->", cur->data);cur = cur->next;}printf("NULL");printf("\n");
}void SListPushBack(SLTNode** pplist, SLTDataType x)    //尾插
{assert(pplist);SLTNode* newnode = BuySListNode(x);if (*pplist == NULL){*pplist = newnode;}else{SLTNode* tail = *pplist;while (tail->next != NULL){tail = tail->next;}tail->next = newnode;}
}void SListPushfront(SLTNode** pplist, SLTDataType x)    //头插
{assert(pplist);SLTNode* newnode = BuySListNode(x);newnode->next = *pplist;*pplist = newnode;}void SListPopBack(SLTNode** pplist)    //尾删
{assert(pplist);assert(*pplist);//空链表//一个结点if ((*pplist)->next == NULL){free(*pplist);*pplist = NULL;}//一个以上结点else{SLTNode* tail = *pplist;while (tail->next->next != NULL){tail = tail->next;}free(tail->next);tail->next = NULL;}
}void SListPopfront(SLTNode** pplist)    //头删
{assert(pplist);assert(*pplist);SLTNode* cur = *pplist;*pplist = (*pplist)->next;free(cur);
}SLTNode* SListFind(SLTNode* plist, SLTDataType x)        //查找
{SLTNode* cur = plist;while (cur){if (cur->data == x){return cur;}cur = cur->next;}return NULL;
}void SListInsert(SLTNode** pplist, SLTNode* pos, SLTDataType x)    //在pos位置前插入元素
{assert(pplist);assert(pos);if (*pplist == pos){SListPopfront(pplist, x);}else{SLTNode* cur = *pplist;while (cur->next != pos){cur = cur->next;}SLTNode* newnode = BuySListNode(x);newnode->next = cur->next;cur->next = newnode;}
}void SListInsertAfter(SLTNode* pos, SLTDataType x)   //在pos位置后插入元素
{assert(pos);SLTNode* newnode = BuySListNode(x);newnode->next = pos->next;pos->next = newnode;
}void SListErase(SLTNode** pplist, SLTNode* pos)     //删除pos位置的元素
{assert(pplist);assert(pos);if (*pplist == pos){SListPopfront(pplist);}else{SLTNode* cur = *pplist;while (cur->next->next = pos){cur = cur->next;}cur->next = pos->next;free(pos);pos = NULL;}
}void SListEraseAfter(SLTNode* pos)          //删除pos位置之后的位置的元素
{assert(pos);assert(pos->next);SLTNode* cur = pos->next;pos->next = cur->next;free(cur);cur = NULL;
}

http://www.rdtb.cn/news/11990.html

相关文章:

  • 网站消息推送旺道seo优化软件
  • wordpress 用户关注开发东莞整站优化排名
  • 表白网站制作代码大连百度网站排名优化
  • 德尔普网络做网站怎么样成人零基础学电脑培训班
  • wordpress大学打不开宁波seo网络优化公司
  • 中信建设有限责任公司海外seo
  • 网站的url个人网站推广
  • 网站怎么做阿里妈妈转链网站建设开发外包公司
  • 软件推荐网站优化技术
  • 客服管理软件系统seo排名优化公司
  • 网站规划和构成怎么样优化关键词排名
  • 如何将wordpress上传到站点广点通和腾讯朋友圈广告区别
  • 湖南省城乡建设厅网站查证朝阳区seo
  • 专门做油画交流的网站今日大新闻
  • 做网站要用多少钱短视频seo排名
  • 网站建设实质最佳bt磁力猫
  • 用asp.net做企业网站人工智能培训
  • wordpress操作教程seo查询工具
  • app软件下载网站免费进入怎么开通网站
  • 做ppt模版的网站长尾词挖掘
  • 沈阳医大男科怎么样自己做seo网站推广
  • 深圳网站建设公司麦百度2023免费下载
  • 如何做向日葵官方网站开源crm系统
  • 霞山手机网站建设公司百度首页精简版
  • 有趣的网站游戏优化手机流畅度的软件
  • 衡阳商城网站制作国外搜索引擎有哪些
  • 灰色项目网站代做互联网推广项目
  • 上海做衣服版的网站宁波网站推广优化哪家正规
  • 常用网站大全google推广专员招聘
  • 凡科轻站小程序靠谱吗西安网站seo技术厂家