image

编辑人: 青衫烟雨

calendar2025-03-15

message4

visits476

编码实现冒泡排序

冒泡排序编程实现如下:
#include
#define LEN 10 //数组长度
void main( void ) {
intARRAY[10]={0,6,3,2,7,5,4,9,1,8}; //待排序数组 printf( ”
” );
for( int a = 0; a < LEN; a++ ) { printf( "%d ", ARRAY[a] ); } int i = 0; int j = 0; bool isChange; //打印数组内容 //设定交换标志 for( i = 1; i < LEN; i++ ) { isChange = 0; for( j = LEN-1; j >= i; j– ) {
if( ARRAY[j+1] < ARRAY[j] ) { ARRAY[0] = ARRAY[j+1]; //最多做 LEN-1 趟排序 //本趟排序开始前,交换标志应为假 //对当前无序区 ARRAY[i..LEN]自下向上扫描 //交换记录 //ARRAY[0]不是哨兵,仅做暂存单元 } } ARRAY[j+1] = ARRAY[j]; ARRAY[j] = ARRAY[0]; isChange = 1; //发生了交换,故将交换标志置为真 //打印本次排序后数组内容 //本趟排序未发生交换,提前终止算法 printf( " " ); for( a = 0; a < LEN; a++) { printf( "%d ", ARRAY[a] ); } if( !isChange ) { break; } } printf( " " ); return; }

喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!

创作类型:
原创

本文链接:编码实现冒泡排序

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share