王道数据结构 -----C++/C实现单链表(带头结点)的建立,删除,查找(可直接运行)
#include<bits/stdc++.h>
#include <stdlib.h>
#include <stdio.h>
typedef int ElemType;
typedef struct LNode{
ElemType 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;
}
LNode * Find_i_1(LinkList L, ElemType i){
if(i<1) return false;
LNode *p;
int j=0;
p=L;
while(p!=NULL &&j<i-1){
p=p->next;
j++;
}
return p;
}
bool InsertNextNode(LNode *p, ElemType e){
if(p == NULL) return false;
LNode *s =(LNode *) malloc(sizeof(LNode));
if(s == NULL) return false;
s->data = e;
s->next = p->next