排序算法2--冒泡排序

原创 2007年09月15日 15:23:00
在冒泡排序的程序中,按升序排列使用了改进的冒泡排序算法,是得最好情况下时间复杂度为O(n),降序排列部分使用的是最基础冒泡排序

template <class T>
void bubble_sort(T *Array, int Size, bool Ascending = true)
{
    assert(Array 
!= NULL);
    assert(Size 
>= 2);

    
int i, j, k = Size;

    
if (Ascending)
    
{
        
for (i = 1; i < Size; i = k)
            
for (j = 0; j < Size-i; j++)
                
if (Array[j] > Array[j+1])
                
{
                    swap(
&Array[j], &Array[j+1]);
                    k 
= Size - j;
                }

    }

    
else
    
{
        
for (i = 1; i < Size; i++)
            
for (j = 0; j < Size-i; j++)
                
if (Array[j] < Array[j+1])
                    swap(
&Array[j], &Array[j+1]);
    }

}

相关文章推荐

c语言排序方式2-冒泡排序算法

  • 2011年04月23日 15:49
  • 623B
  • 下载

冒泡排序算法

  • 2013年08月06日 21:35
  • 2KB
  • 下载

第16周报告1(任务2):学会冒泡排序算法

2011年12月07日 (2011-12-07 17:15:28)[编辑][删除] 转载▼ 标签: 杂谈   第16周报告1(任务2): ...

冒泡排序算法

  • 2013年03月18日 12:01
  • 403B
  • 下载

冒泡排序算法

  • 2011年12月07日 20:48
  • 690B
  • 下载

第16周报告1(任务2)--冒泡排序算法--参数是指向数组的指针变量

第16周报告1(任务2): 实验目的:学会冒泡排序算法 实验内容:实现冒泡排序算法,并将之定义为一个函数,其中参数是指向数组的指针变量 * 程序头部注释开始 * 程序的版权和版本声明部分 ...

冒泡排序算法

  • 2012年10月08日 11:34
  • 652B
  • 下载

java冒泡排序算法

  • 2015年08月30日 11:59
  • 230B
  • 下载

菜鸟学算法之--冒泡排序

欢迎转载,转载时请注明出处和作者联系方式文章出处:http://blog.csdn.net/shaojieli作者联系方式:李少杰  排序算法中,冒泡算法虽然是效率是最低的,但对于新手来说,思路是最重...

易语言冒泡排序算法

  • 2013年07月11日 19:21
  • 8KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:排序算法2--冒泡排序
举报原因:
原因补充:

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