自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(0)
  • 资源 (1)
  • 收藏
  • 关注

空空如也

单链表.cpp

#include"iostream" #include"string" #include<iomanip> #include<fstream> using namespace std; typedef int Status; typedef int ElemType; #define OK 1 #define ERROR 0 typedef struct LNode//定义 { ElemType data;//结点的数据域 struct LNode *next;//结点的指针域 }LNode,*LinkList; //LinkList为结构体LNode的指针类型 Status InitList(LinkList &L)//初始 { L=new LNode; L->next=NULL; return OK; } void GreateList_L(LinkList &L,int n)//后插法 输入元素 { /*L=new LNode;//生成新的结点作为头结点,用头指针L指向头结点 L->next=NULL;//头结点的指针域为空*/ LNode *r; LNode *p; r=L; //!!!!错误,定义指针 for(int i=0;i<n;++i) { p=new LNode; cin>>p->data; p->next=NULL; r->next=p; r=p; } } /*void CreateList_L(LinkList &L,int n)//前插法 { cout<<"输入录取数据个数 "; cin>>n; cout<<"输入数据"; L=new LNode;//生成新的结点作为头结点,用头指针L指向头结点 L->next=NULL;//头结点的指针域为空 for(int i=0;i<n;++i) { p=new LNode; cin>>p->data; p->next=L->next; L->next=p; } }*/ Status GetElem(LinkList L,int i,int &e)//取值 { LNode *p; p=L->next;int j=1; while(p&&j<i) { p=p->next; ++j; } if(!p||j>i) return ERROR; e=p->data; return OK; } LNode *LocateElem(LinkList L,ElemType e)//查找 { int j=1; LNode *p; p=L->next; while(p&&p->data!=e) { p=p->next; } return p; } Status LisInsert(LinkList &L,int i,ElemType e)//插入 { LNode *p; p=L->next;int j=0; while(p&&(j<i-1)) { p=p->next; j++; } if(!p&&(j>i-1)) return ERROR; LNode *s; s=new LNode; s->data=e; s->next=p->next; p->next=s; return OK; } Status ListDelete(LinkList &L,int i)//删除 { LNode *p; p=L->next;int j=0; while(p&&(j<i-1)) { p=p->next; j++; } if(!(p->next)&&(j>i-1)) return ERROR; LNode *q; q=p->next; p->next=q->next; delete q; return OK; } int main() { LNode *L; int i,temp,n,choose=-1; int e; cout << "1. 创建信息表\n"; cout << "2. 查找元素\n"; cout << "3. 插入元素\n"; cout << "4. 删除元素\n"; cout << "0. 退出程序\n\n"; while(choose!=0) { cout << "请选择:"; cin >> choose; switch (choose) { case 1: cout<<"请输入元素个数:"; cin>>n; cout<<"\n"<<"请输入元素"; GreateList_L(L,n); cout<<"\n"; break; case 2:cout<<"请输入查找的元素:"; cin>>e; LNode *s; s=LocateElem(L,e); cout<<"这个元素的地址是"<<s<<"\n\n"; break; case 3:cout<<"请输入需要插入的数:"; cin>>e; cout<<"\n"<<"请输入需要插入的位置"; cin>>i; if(LisInsert(L,i,e)) cout<<"插入成功\n\n"; else cout<<"插入失败\n\n"; break; case 4: cout<<"请输入删除的位置:"; cin>>i; if(ListDelete(L,i)) cout<<"删除成功\n\n"; else cout<<"删除失败\n\n"; break; } } }

2019-10-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除