1、 不带空头结点单链表 #include<stdio.h>#include<stdlib.h>#includetypedefstructNode{intdata;structNode*next;}Node;voidpush(Node**headRef,intkey){Node*entry=(Node*)malloc(sizeof(Node));if(!entry)exit(-1);entry->data=key;entry->next=(*headRef);(*headRef)=entry;}voiddisplist(Node*h...
1、 不带空头结点单链表 #include<stdio.h>#include<stdlib.h>#includetypedefstructNode{intdata;structNode*next;}Node;voidpush(Node**headRef,intkey){Node*t=(Node*)malloc(sizeof(Node));t->data=key;t->next=(*headRef);(*headRef)=t;}voiddisplist(Node*h){while(h){printf("%d -> ",h...
数组、单链表冒泡排序 C语言实现 数组冒泡排序冒泡排序的原理从左到右,相邻元素进行比较。每次比较一轮,就会找到序列中最大的一个或最小的一个。这个数就会从序列的最右边冒出来。举例假如有一堆数据:进行第一轮比较第一次:80与31比较,80 > 31,交换第...
node *sort(node *head) { node *p,*p2,*p3; int n; int temp; n=length(head); if(head==NULL||head->next==NULL) return head; p=head; for(int j=1;j<n;++j) { p=head; for(int i=0;i<n-j;++i) { if(p->data>p->next->data) { temp=p->data; p->data=p->next->da...
C-单链表-快速排序,冒泡排序 struct ST_QUEUE { int data; struct ST_QUEUE* pNext; // 指针域 }; typedef struct ST_QUEUE Queue; void swapNode(Queue *p1, Queue *p2) { Queue* tmp = (Queue*)malloc(sizeof(Queue)); tmp->data = p1->data;...
NULL 在 C 中宏定义为 0, 因此空指 针在C 中也就是 0 地址。 • 添加 • 插入 • 删除 head a0 a1 … an-1 源代码: /* 陈建潮 2013-12-28 单链表 V001,用于贪吃蛇游戏,链表的其他操作待完善; */ #include "stdio.h" #include "malloc.h" struct linknode { char data; //需要保存的...