#include <iostream>
using namespace std;
typedef struct LNode{
int data;
struct LNode *next;
}LNode,*LinkList;
bool InitList(LinkList &L){
L=(LNode *)malloc(sizeof(LNode));
if(L==NULL){
return false;
}
L->next=NULL;
return true;
}
bool ListInsert(LinkList &L,int i,int e){
if(i<1){
return false;
}
LNode *p=L;
int j=0;
for(j=0;j<i-1&&p!=NULL;j++){
p=p->next;
}
if(p==NULL){
return false;
}
LNode *s=(LNode *)malloc(sizeof(LNode));
s->data=e;
s->next=p->next;
p->next=s;
return true;
}
bool ListInsert2(LNode *p,int e){
if(p==NULL){
return false;
}
LNode *s=(LNode *)malloc(sizeof(LNode));
s->data=e;
s->next=p->next;
p->next=s;
return true;
}
void printList(LinkList L){
LNode *p=L->next;
while(p!=NULL){
cout<<p->data<<",";
p=p->next;
}
}
int main()
{
LinkList L;
InitList(L);
ListInsert(L,1,1);
ListInsert2(L->next,2);
printList(L);
return 0;
}
|