冒泡排序

原创 2006年06月21日 00:16:00

****************普通冒泡排序法BEGIN********************

void main(){
 int num[]={8,6,7,5,3,4,2,1,0,9},state=1;
 for(int i=0;(i<=9)&&state;i++){
   state=0;
  for(int j=0;j<=9-i;j++)
   if(num[j]>num[j+1]){
    int temp=num[j];
    num[j]=num[j+1];
    num[j+1]=temp;
     state=1;
   }
 }
 for(i=0;i<=9;i++)
  cout<<num[i]<<"   ";
}

****************普通冒泡排序法OVER********************

****************冒泡排序法(链表实现)BEGIN***************

typedef struct Node{
 int v;
 struct Node *next;
}Node;
void Insert(Node *L,int e){
 Node *temp=new Node;
 temp->v=e;
 temp->next=NULL;
 L->next=temp;
}
void main(){
 Node *H=new Node,*L=new Node,*p0=new Node,*p1=new Node;
 L=H;
    Insert(H,8);
 H=H->next;
 Insert(H,6);
 H=H->next;
 Insert(H,7);
 H=H->next;
 Insert(H,5);
 H=H->next;
 Insert(H,3);
 H=H->next;
 Insert(H,4);
 H=H->next;
 Insert(H,2);
 H=H->next;
 Insert(H,1);
 H=H->next;
 Insert(H,0);
 H=H->next;
 Insert(H,9);
 H=L;
 L=L->next;
 /*while(L!=NULL){
  printf("%d  ",L->v);
  L=L->next;
 }//构造整个链表
 //用链表实现出泡法  */
 int state=1,Max=100; //  将MAX的值设为100,利于第一轮循环
 for(p0=H->next;p0!=NULL&&state;p0=p0->next){
  state=0;
  for(p1=H->next;p1->next!=NULL&&p1->v!=Max;p1=p1->next)
   if((p1->v)>(p1->next->v)){
    int a;        
    a=p1->v;
    p1->v=p1->next->v;
    p1->next->v=a;
    state=1;
   }
  Max=0;
  for(p1=H->next;p1->next!=NULL&&p1->v!=Max;p1=p1->next) //此循环求出这一次范围中的最大值赋给MAX
   if(p1->v>Max)
    Max=p1->v;
    }
    while(L!=NULL){
  printf("%d  ",L->v);
  L=L->next;
 }
}

 

****************冒泡排序法(链表实现)OVER***************

 

哈哈,今天又学到了一点点哦,开心ING

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

奇偶冒泡排序

冒泡排序C语言

  • 2016-02-18 18:57
  • 652B
  • 下载

经典白话算法之冒泡排序

简化版的桶排序不仅仅有上一节所遗留的问题,更要命的是:它非常浪费空间!例如需要排序数的范围是0~2100000000之间,那你则需要申请2100000001个变量,也就是说要写成int a[21000...

数据结构之冒泡排序

  • 2017-08-23 10:35
  • 178KB
  • 下载

冒泡排序及其优化

/** * 冒泡排序及其优化 * @author shuaicenglou * */ public class Maopao { public static void main(Str...

JAVA冒泡排序及其优化

arm汇编冒泡排序

  • 2016-01-14 15:21
  • 812B
  • 下载

java冒泡排序

public class BubbleSort { public static void main(String[] args) { // 创建一个数组,这个数组元素是乱序的 int[] a...

冒泡排序VB版

  • 2015-03-28 21:43
  • 27KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)