#include "stdafx.h"
#include "malloc.h"
int _tmain(int argc, _TCHAR* argv[])
{
return 0;
}
struct Node{
int value;
struct Node* next=NULL;
}
head=null;
void delete(int number){
Node* p1=head;
if(p1->value==number){
head=p1->next;
p1->next=null;
free(p1);
}
else{
Node* p2=p1->next;
while(p2!=null){
if(p2->value==number){
p1->next=p2->next;
p2-next=null;
free(p2);
p2=p1-next;
}
else{
p1=p2;
p2=p2->next;
}
}
}
}
void preadd(int number){
Node* p1=head;
if(p1->value==number){
head=(Node)malloc(sizeof(Node));
head->next=p1}
else{
Node*p2=p1->next;
while(p2!=null){
if(p2->value==number){
p1->next=(Node)malloc(sizeof(Node));
p1=p1->next;
p1->next=p2;
p1=p2;
p2=p2->next;
}
p1=p2;
p2=p2->next;
}
}
}
void reverse(){
Node*p1=head;
p2=p1->next;
p3=p2->next;
while(p3!=null){
p1->next=null;
p2->next=p1;
p2=p3;
p1=p2;
p3=p3->next;
}
p2->next=p1;
head=p2;
}
c数据结构——链表添加+删除+翻转
最新推荐文章于 2019-01-01 22:55:28 发布