数据结构(冒泡法)

原创 2005年02月27日 18:13:00
bubble sort  : 从后向前逐渐比较大小顺序,一个接一个的比较,最后列出排列顺序的方法。

如有4位数字:43 、21 、12、54 用bubble sort 排列结果 

                       初始              第一趟             第二趟           第三趟
                          43                  12                       12                  12
                          21                  43                        21                 21 
                          12                  21                        43                 43 
                          54                  54                        54                 54

对任意n个数据都要进行N-1趟的排序,若在某一趟排序中没有记录位置的交换,说明该序列已经按照关键字
排序完了。(如 该例子的确第二和第三趟是不是重复的) ,为了优化代码,采用FLAG来处理!
                   bubblesort(R)     //冒泡排序法
                    recdtype    R[n]   ;
                   {  int  i,  j,  flag  ;
                       recdtype    temp;
                       for( i = 0 ; i< n-2;  i++)  //运行N-1趟排序
                       {   flag=true;
                            for(  j = n-1 ; j>= i ; j--)   //从后往前扫描
                               if( R[j+1].key < R[j].key )  //交换记录顺序 
                                 {  temp = R[j+1]   ;
                                     R[j+1] =  R[j]   ;
                                     R[j]    =  temp   ;
                                     flag = false;      //  置交换位置
                                 }
                            if (flag)      break;    //本趟未发生交换
                       }
                    }


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

相关文章推荐

数据结构 - 冒泡排序法详解

数据结构 - 冒泡排序法
  • nvd11
  • nvd11
  • 2017-01-24 23:36
  • 268

数据结构和算法——排序算法(冒泡法 选择法 插入法 快速法)实现

1.排序方法:   比较排序:冒泡排序,选择排序,插入排序,快速排序   不用比较的排序:希尔排序,堆排序 冒泡选择插入复杂度是一个级别的O(N^2) 快速堆归并排序是O(NlogN)  ...

数据结构冒泡排序算法

Java数据结构和算法-简单排序(1-冒泡排序)

一般在创建数据库之后,就可能对某些数据进行排序。例如:对商店的销售品按价格排序,对城市按人口增长率进行排序等。排序一般作为检索的一个初始步骤,正如在前面所讲的数组中,二分查找要比线性查找快的多,但是二...

数据结构冒泡排序

  • 2014-06-10 17:13
  • 703B
  • 下载

数据结构之冒泡排序

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

【算法与数据结构必备】PHP常用排序算法:冒泡,快速排序,插入排序(一维数组)

冒泡排序:两两交换数值,最小的值在最左边,就如最轻的气泡在最上边。对整列数两两交换一次,最小的数在最左边,每次都能得一个在剩下的数中的最小的数,“冒”出来的数组成一个有序区间,剩下的值组成一无序区间,...

数据结构,冒泡算法演示

  • 2013-05-29 08:19
  • 11.81MB
  • 下载

c++数据结构--冒泡排序

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

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