首页 星云 工具 资源 星选 资讯 热门工具
:

PDF转图片 完全免费 小红书视频下载 无水印 抖音视频下载 无水印 数字星空

数据结构-单链表的操作

后端 65.04KB 24 需要积分: 1
立即下载

资源介绍:

数据结构-单链表的操作
#include #include"LNode.h" #define OK 1 #define OVERFLOW -2 #define ERROR 0 using namespace std; //初始化单链表 Status InitList(LinkList &L){ L=new LNode; if(!L)exit(OVERFLOW); L->next=NULL; return OK; } //销毁单链表 Status DestroyList(LinkList &L){ LinkList p; while(L){ p=L; L=L->next; delete p; } return OK; } //创建单链表——后插法 void CreatList_R(LinkList &L,LinkList p,int n){ L=new LNode; L->next=NULL; LinkList r; r=L; for(int i=0;i>p->data; p->next=NULL; r->next=p; r=p; } } //清空单链表 Status ClearList(LinkList L){ LinkList p,q; p=L->next; while(p){ q=p->next; delete p; p=q; } L->next=NULL; return 0; } //求单链表的长度 Status ListLength(LinkList L){ LinkList p=L->next; int acount=0; while(p){ ++acount; p=p->next; } return acount; } //判断单链表是否为空 bool ListEmpty(LinkList L){ return L->next!=NULL; } //单链表的按位置查找 Status LinkList_id(LinkList L,int num){ int len=ListLength(L); if(num<1||num>len){ cout<<"查找位置不合法!"<next; for(int i=1;inext; } int res=p->data; return res; } //求前驱 Status PriorElem(LinkList L,int num){ int len=ListLength(L); if(num-1<1||num>len){ cout<<"查找位置不合法!"<next; } int res=p->data; return res; } //求后继 Status NextElem(LinkList L,int num){ int len=ListLength(L); if(num+1<1||num>len){ cout<<"查找位置不合法!"<next->next; for(int i=1;inext; } int res=p->data; return res; } //单链表的按值查找 Status LocateElem_L(LinkList L,ElemType e){ LNode *p=L; int len=0; while(p&&(p->data!=e)) { p=p->next; len++; } if(len<=ListLength(L)) return p->data; else return ListLength(L)+1; } //在单链表的第i个位置插入一个元素 Status LinkListInsert(LinkList L,int i,ElemType e){ LinkList p=L;int j=0;LNode* s; while(p&&jnext; ++j; } if(!p||j>i-1)return ERROR; s=new LNode; s->data=e; s->next=p->next; p->next=s; return OK; } //将单链表中第i个数据元素删除 Status ListLinkDelete(LinkList L,int i/*,ElemType &e*/){ LinkList p=L;int j=0;LNode* r; while(p->next&&jnext; ++j; } if(!(p->next)||j>i-1)return ERROR; r=p->next; p->next=r->next; //e=r->data; delete r; return OK; } //遍历输出单链表 void PrintList(LinkList L){ LinkList p=L->next; if(ListLength(L)>0){ cout<<"当前单链表的所有元素为:"<data<<" "; p=p->next; } cout<>num; int count=0; while(num) { switch(num) { case 0: num=0; break; case 1: InitList(L); count++; cout<<"单链表初始化完成!"<>n; LinkList p; cout<<"请插表:"; CreatList_R(L,p,n); cout<<"单链表创建完成!"<>num; if(num<1||num>ListLength(L)){cout<<"查找位置不合法"<>index; if(LocateElem_L(L,index)>ListLength(L)){ cout<<"该元素在单链表中不存在!"<>x; if(x<=1||x>ListLength(L)){cout<<"查找位置不合法"<>s; if(s<1||s>=ListLength(L)){cout<<"查找位置不合法"<

资源文件列表:

链表.zip 大约有13个文件
  1. 链表/bin/
  2. 链表/bin/Debug/
  3. 链表/bin/Debug/LNode.exe 107.63KB
  4. 链表/LNode.cbp 1.15KB
  5. 链表/LNode.cpp 8.75KB
  6. 链表/LNode.depend 429B
  7. 链表/LNode.h 1.08KB
  8. 链表/LNode.layout 1.07KB
  9. 链表/main.cpp 313B
  10. 链表/obj/
  11. 链表/obj/Debug/
  12. 链表/obj/Debug/LNode.o 39.13KB
  13. 链表/obj/Debug/main.o 24.07KB
0评论
提交 加载更多评论
其他资源 React 框架的无代码/低代码开发工具,可视化生成网站和应用程序
一款 React 框架的无代码/低代码开发工具,可视化生成网站和应用程序 React 可视化构建器。构建应用程序、网站和内容 适用于您的代码库的开源可视化构建器 以极快的速度构建精美的应用程序和网站 拖放您自己的组件,与您的代码库集成 突破低代码天花板
React 框架的无代码/低代码开发工具,可视化生成网站和应用程序 React 框架的无代码/低代码开发工具,可视化生成网站和应用程序 React 框架的无代码/低代码开发工具,可视化生成网站和应用程序
维兹曼数据集,包含数据集与真实分割结果
维兹曼数据集,包含数据集与真实分割结果
维兹曼数据集,包含数据集与真实分割结果
图像分割常用合成图像,包含FCM源代码
图像分割常用合成图像,包含FCM源代码
open SSL 1.1.1稳定版本
open SSL 1.1.1稳定版本
购物网站毕设(源码+视频)
技术栈springboot+vue+mysql
openssl较靠前的版本,规避编译错误
openssl较靠前的版本,规避编译错误
eterm_v3.9_xfdown.com.zip
eterm_v3.9_xfdown.com.zip
UserLibrary-Res-0805.zip
UserLibrary-Res-0805.zip