www.ndwl.net > JAVA怎样用链表来实现冒泡排序,我需要整个编程过...

JAVA怎样用链表来实现冒泡排序,我需要整个编程过...

两种 思路: 1、交换链表中各节点的数据,不交换节点; 2、交换节点,即节点link指针的内容。 下面以第一种思路为例: void sort(LinkList *L) { int i,j,t; LinkList *p = L; int count = 0; while(p->link != NULL) { count++; p = p->link; }...

两种 思路: 1、交换链表中各节点的数据,不交换节点; 2、交换节点,即节点link指针的内容。 下面以第一种思路为例: void sort(LinkList *L) { int i,j,t; LinkList *p = L; int count = 0; while(p->link != NULL) { count++; p = p->link; }...

算法思想到处都可以找到,程序代码还是得自己去写,自己亲手尝试过,才更理解其中的原理。 C和C++差别不大,算法是相同的。 加油吧!

同学,给你一段代码,里面涵盖了链表的冒泡排序! #include #include typedef struct node { int data;/*data代表成绩分数*/ struct node *next; }LNode,*LinkList; LinkList Creat(void)/*创建链表,结束标志为当输入的数据为0!*/ { LinkList H...

我这个效率要高一些,呵呵。 #include typedef struct listnode { int f; struct listnode *next; } ListNode; ListNode *sort(ListNode *head) { ListNode *p,*p1,*p2,*p3; ListNode h, t; if (head == NULL) return NULL; h.next=head; p=&h; ...

两种 思路: 1、交换链表中各节点的数据,不交换节点; 2、交换节点,即节点link指针的内容。 下面以第一种思路为例: void sort(LinkList *L) { int i,j,t; LinkList *p = L; int count = 0; while(p->link != NULL) { count++; p = p->link; }...

#include #include struct number { int num; struct number *next; }; void main() { struct number *head; struct number *p1,*p2,*p,*p3,*p4; int n=0,m,i,j; p1=p2=(struct number *)malloc(sizeof(struct number)); printf("\nWang jianfei...

看到一个很明显的错误:if((current->data)=(c->data)) 判断语句用== ,而不是= 还有就是节点换位置是不是不对啊,即:下面的程序 if((current->data)data)) { temp=c; c=current; current=temp; } *只是换节点里的成绩和学号即可吧,将2个节点...

手机不方便码字,就是你的交换操作应该是把节点里的num交换啊,比如第一句应该是temp=p->num,后面几句类似,不然你三个指针换来换去,pq只是指向了链表结点,他两本身并不是链表里的元素,你把他们交换对链表一点影响都没…

网站地图

All rights reserved Powered by www.ndwl.net

copyright ©right 2010-2021。
www.ndwl.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com