linux社区爱心援助Linux认证系列教程业界动态站务新闻公司招聘建议留言网址大全LPI专题CISCO专题
设为首页
加入收藏
管理团队
JSP  
JAVA  
PERL  
 您的位置:首页 > article > Linux开发区 > 软件开发 >
栏目导栏
资料搜索
热门文章
·Linux 下 C 语言编程
·Linux下的通用线程池创建
·C++字符串转换篇
·linux C 进程操作篇
·linux上的C/C++编译器gcc/egcs
·linux C 文件权限控制篇
·GCC使用手册
·linux C 接口处理篇
·在Redhat Linux上安装 GCC 编译
·GCC使用指南
·C语言运算符
·Linux下C开发环境的构成和安装
·fopen()函数的参数说明
·GCC使用手册与常用命令
·Scheme 语言介绍
最新文章
·在Ubuntu Linux 8.04上构建GCC
·Linux操作系统下Socket编程地址
·将VC程序移植到Linux系统的几点
·Linux下malloc/free与new/dele
·Linux下用GTK和socket实现简单
·Linux操作系统下让Tomcat启动在
·Linux操作系统中如何编译C程序
·几种常被人们忽略的Linux系统下
·Eclipse编程工具 在Ubuntu下的
·Linux操作系统下的网络地址转换
·老手经验谈:Linux驱动程序开发
·Linux操作系统多线程同步Mutex
·Linux操作系统下C程序语言简易
·Linux系统平台下关于GCC编译及
·解决Linux系统下管道被接受方关
Google
 
冒跑排序算法函数bubblesort()的实现
[ 作者:  加入时间:2007-06-04 12:18:18  来自:Linux联盟收集整理 ]
template<type name T>
int bubblesort(T array[], int n)
{
  bool exchange = false; //是否发生交换
  int i, j;              //用于遍历子表的下标
  T temp;                //用于交换元素的临时变量
//开始遍历过程,以下标j构成子表,共有n-1个子表:
  for ( j = n - 1; j >= 0; j-- )
  {
    exchange = false;
    for ( i = 0; i < j; i++ )
    {
      if ( array[i] >  array[i + 1])
      {
        temp = array[i];
        array[i] = array[i + 1];
        array[i + 1] = temp;
        exchange = true;
      }
    }
     if (!exchange)  //如果在一次遍历中没有发生交换,则表示已经排序好,中断遍历过程
     return n - j - 1;
  }
  return n - 1 - j;
}
Linux联盟收集整理 ,转贴请标明原始链接,如有任何疑问欢迎来本站Linux论坛讨论
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
无相关信息