数据结构笔记--插入排序

插入排序就是将抽出的牌插入合适的位置。主要分为三个步骤: 1、从牌组抽出一张牌,记录牌的位置和数字。(从第二张牌开始抽,也就是下标为1,结束这3个步骤后再抽第三张牌重新进行这三个步骤,直到最后一张牌插入完成) 2、将抽出的牌和左边的牌逐个比对(在牌的左范围内从右到左比对),将满足条件的牌逐个向右挪一位,直到条件不满足为止,此时会出现一个空位。 3、将牌插入到空位上。 代码实现如下

template<class T>
void InsertSort(T arr[],N){
int p;int i;T temp;
for(p=1;p<N;p++){
    temp=arr[p];//1、抽牌
	for(i=p;i>0&&arr[i-1]>tmp;i--)
    {
    	arr[i]=arr[i-1];//2、挪牌
    }
  arr[i]=tmp;//3、插牌
}
}


全部评论

相关推荐

图源网络侵权删
dddooola:这个事情我去年8月就看到有人b站(up:程序员正义)在举报了,可能一直在查,这次是查明后的处分了
点赞 评论 收藏
分享
02-22 21:16
已编辑
门头沟学院 运营
牛客928043833号:离了你谁还拿我当个宝
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务