python单链表操作、建立头指针为h的单链表_实验1单链表操作【基本要求】(1)建立头指针为h的带表头结点的单链表;(2)输出单链表的数据域值;(3)输入x,y,在第一个x之后插入结点y,若无结点x...

是用C还是C++?

你没说的话,只能给你个参考程序!#include 

using namespace std;

typedef char ElemType;

typedef int Status;

#define OK 1

#define ERROR 0

typedef struct Lnode

{

ElemType data;

struct Lnode *next;

}Lnode,*LinkList;

void Creat_List(LinkList L)//创建单链表并输入元素

{

LinkList p;

char ch;

cout<

while(cin>>ch&&ch!='#')

{

p=(LinkList)malloc(sizeof(Lnode));

if(!p)

{

cout<

exit(ERROR);

}

p->data=ch;//尾插法

L->next=p;

L=p;

}

L->next=NULL;

}

void output_List(LinkList L)//遍历单链表(输出单链表元素)

{

LinkList p;

p=L->next;

if(p==NULL)

{

cout<

exit(ERROR);

}

while(p!=NULL)

{

cout<data<

p=p->next;

}

}

void List_Delete(LinkList L,int i)//删除指定位置的元素

{

LinkList q;

if(i<1)

{

cout<

exit(ERROR);

}

int j=0;

while(L!=NULL&&j

{

L=L->next;

j++;

}

if(L->next==NULL)

{

cout<

exit(ERROR);

}

q=L->next;

L->next=q->next;

free(q);

}

void List_Inster(LinkList L,int i,ElemType e)//在指定位置插入元素

{

LinkList s;

int j=0;

while(L!=NULL&&j

{

L=L->next;

j++;

}

if(!L||j>i-1)

{

cout<

exit(ERROR);

}

s=(LinkList)malloc(sizeof(Lnode));

s->data=e;

s->next=L->next;

L->next=s;

}

Status main()

{

LinkList H;

H=(LinkList)malloc(sizeof(Lnode));

H->next=NULL;

Creat_List(H);

output_List(H);

int n;

cout<

cin>>n;

List_Delete(H,n);

cout<

output_List(H);

cout<

ElemType m;

cin>>n>>m;

List_Inster(H,n,m);

output_List(H);

return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值