插入排序(英语:Insertion Sort)是一种简单直观的排序算法。它的工作原理是通过构建有序序列,对于未排序数据,在已排序序列中从后向前扫描,找到相应位置并插入。插入排序在实现上,通常采用in-place排序,因而在从后向前扫描过程中,需要反复把已排序元素逐步向后挪位,为最新元素提供插入空间。插入排序对于部分有序效率很高,因为扫描的时候是在已排序的基础上,默认第一个是已排序
public void insert(int[] a)
{
for(int i=1;i<a.length;i++) //n-1此扫描,依次向前插入n-1个元素
{
int temp=a[i]; //每趟将a[i]插入到前面的排序子序列中
int j;
for(j=i-1;j>=0&&temp<a[j];j--)
{
a[j+1]=a[j]; //将前面较大的元素向后移动
}
a[j+1]=temp; //temp值到达插入位置
}
點擊查看更多內(nèi)容
1人點贊
評論
評論
共同學(xué)習,寫下你的評論
評論加載中...
作者其他優(yōu)質(zhì)文章
正在加載中
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦