C語言
#include <stdio.h>
#include <malloc.h>
#define elemtype int
typedef struct Lnode{
struct Lnode *next;
elemtype data;
}* LinkList, Lnode;
void linkList_traverse(LinkList &L){
LinkList p=L;
while (p->next!=NULL){
printf("%d",p->data);
p=p->next;
}
printf("%d",p->data);
}
void linkList_ini(LinkList &L){
L=(LinkList)malloc(sizeof(Lnode));
L->next=NULL;
L->data=0;
}
void linkList_add(LinkList &L, elemtype e){
LinkList p=L;
LinkList s=(LinkList)malloc(sizeof(Lnode));
s->data=e;
s->next= NULL;
while(p->next!=NULL){
p=p->next;
}
p->next=s;
}
void linkList_insert(LinkList &L,int i,elemtype e){
LinkList p=L;
LinkList s=(LinkList)malloc(sizeof(Lnode));
s->data=e;
for(int j=0;j<i-1;j++){
p=p->next;
}
s->next=p->next;
p->next=s;
}
int main() {
LinkList L;
linkList_ini(L);
linkList_add(L,1);
linkList_add(L,2);
linkList_insert(L,1,2);
linkList_traverse(L);
}
Java
class Lnode{
Lnode next;
int data;
public Lnode(int e){
this.data=e;
this.next=null;
}
public static void add(Lnode L,int data){
Lnode p=L;
while(p.next!=null){
p=p.next;
}
p.next=new Lnode(data);
}
public static void insert(Lnode L,int i,int data){
Lnode p=L;
Lnode s=new Lnode(data);
for(int j=0;j<i-1;j++){
p=p.next;
}
s.next=p.next;
p.next=s;
}
public static void traverse(Lnode L){
Lnode p=L;
while (p.next!=null){
System.out.println(p.data);
p=p.next;
}
System.out.println(p.data);
}
}
public class LinkList {
public static void main(String[] args) {
Lnode L=new Lnode(0);
Lnode.add(L,20);
Lnode.insert(L,1,30);
Lnode.traverse(L);
}
}