大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。
C语言简单的插入算法:
插入排序的基本思想:
经过i-1遍处理后,a1,a2,…,ai-1己排好序。
第i遍处理仅将ai插入a 1。a2,…,ai-1的适当位置。使得a1。a2,…,ai成为有序序列。
首先比較ai和ai-1,假设ai-1≤ ai,则a1,a2,…,ai已经是有序序列,第i遍处理就结束了;否则交换ai与ai-1的位置。继续比較ai-1和ai-2。直到找到某一个位置j(1≤j≤i-1)。使得aj≤ aj+1时为止。
实例图:
排序过程:
核心代码:
void insertSort(int arr[], int length) { int key; int i, j; for(i = 1; i < length; i++) { key = arr[i]; for(j = i - 1; j>= 0; j--) { if(arr[j] >= key) { arr[j+1] = arr[j]; } else break; } arr[j+1] = key; } }
測试例如以下:
版权声明:本文博客原创文章,博客,未经同意,不得转载。
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/117597.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...