数据结构实现头插法和尾插法
数据结构这种烧脑的东西我是真不想搞,学了一学期也只知道有个数据结构这个东西,为了学习搞好C语言,硬着头皮学。
头插法:
#include
#include
struct list
{
int data;
struct list *next;
};
int main()
{
struct list *inPut,*head;
head->next = NULL;
int i,n;
printf("请输入排序数字:\n");
for(i=0;i<5;i++){
inPut = (struct list*)malloc(sizeof(struct list));
scanf("%d",&inPut->data);
inPut->next = head->next;
head->next = inPut;
}
while((head->next)){
printf("%d ",(head->next)->data);
(head->next) = (head->next)->next;
}
printf("\n");
return 0;
}
尾插法:
#include
#include
struct list
{
int data;
struct list *next;
};
int main()
{
int i;
struct list *head,*tail,*input;
head->next = NULL;
tail = head;
for(i=0; i<5; i++){
input = (struct list*)malloc(sizeof(struct list));
scanf("%d",&input->data);
input->next = tail->next;
tail->next = input;
tail = input;
}
while((head->next)){
printf("%d ",(head->next)->data);
(head->next) = (head->next)->next;
}
printf("\n");
return 0;
}
尾插法的第二种方法:
for(i=0; i<5; i++){
input = (struct list*)malloc(sizeof(struct list));
scanf("%d",&input->data);
tail->next = input;
tail = input;
}
tail->next = NULL;
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
暂时没有评论,来抢沙发吧~