庄生晓梦

庄生晓梦迷蝴蝶

博客园 首页 新随笔 联系 订阅 管理
  164 随笔 :: 3 文章 :: 1 评论 :: 74038 阅读
#include <stdio.h>

void insertSort( int arr[] , int size ) {
	int i , j , k , f /*First element*/;
	// 0 1 2 3 4 
	// 4			3,2,1
	// 3 4			2,1
	// 2 3 4		1

	// 1. 遍历无序区域
	for ( i = 1; i < size; i++ ) {
		f = arr[i] ; // 无序区的第一个元素,与有序区比较
		// 2. 遍历有序区域, 找到第一个比无序区大的元素
		for ( j = 0; j < i; j++ ) {
			if ( f < arr[j] ) {
				// 3. 后移,j 以及之后的元素
				for ( k = ( i - 1 ); k > j ; k-- ) {
					arr[ k + 1 ] = arr[ k ];
				}

				arr[ j ]  = f;
			}
		}
	}
}

void printAll( int arr[], int size ) {
	int i =0;

	for ( i = 0; i < size; i++ ) {

		printf( "%d ", arr[i]  );
	}

	printf( "\n" );
}

void main() {
	int arr[] = {3,2,1,2,3, 7,8,9,10 };
	int size = sizeof( arr )  / sizeof( int );
	
	printAll( arr, size );
	insertSort( arr, size );
	printAll( arr, size );
}


已有 0 人发表留言,猛击->>这里<<-参与讨论


ITeye推荐



posted on   qwop  阅读(162)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
点击右上角即可分享
微信分享提示