#include<iostream>
using namespace std;
struct List{
int data;
List *next;
};
typedef List *list;
list creat(){
list p;
p = (list )malloc(sizeof(List));
p ->next = NULL;
return p;
}
void insert(int x, int i, list p){
if(i == 1){
list s;
s = (list)malloc(sizeof(List));
s ->data = x;
s ->next = p;
return;
}
else{
for(int j = i - 2; j > 0; j --)
p = p ->next;
list s;
s = (list)malloc(sizeof(List));
s ->data = x;
s ->next = p ->next;
p ->next = s;
return;
}
}
void delet(int i, list p){
if(i == 1){
list s;
s = p;
p = p ->next;
free(s);
return;
}
else{
for(int j = i - 2; j > 0; j --)
p = p ->next;
list s;
s = p ->next;
p ->next = s ->next;
free(s);
return;
}
}
int find(int x, list p){
int i = 0;
while(p != NULL){
i ++;
if(p ->data == x)
return i;
}
return -1;
}
list findKth(int i, list p){
for(int k = i - 1; i > 0; i --){
if(p == NULL)
return NULL;
p = p ->next;
}
return p;
}
数据结构学习之路2 链表存储的线性表
最新推荐文章于 2024-03-22 15:15:26 发布