insertionsort
insertionsort
潜水的挖掘机 发表于9个月前
insertionsort
  • 发表于 9个月前
  • 阅读 7
  • 收藏 0
  • 点赞 0
  • 评论 0
//insertion sort 1
template<typename T>
void insertionsort_1(T arr[],int len)
{
    for(int i=1;i<len;++i)
    {
        for(int j=i;j>0;--j)
        {
            if(arr[j-1]>arr[j])
                swap(arr[j-1],arr[j]);//一次比较过程带来额外的三次赋值,待优化。
            else
                break;
        }
    }

}

//insertion sort 2
template<typename T>
void insertionsort_2(T arr[],int len)
{
    for(int i=1;i<len;++i)
    {
        T e=arr[i];
        int j=i;
        //向前寻找元素e的插入位置,若不满足条件,则将前面的元素向后摞。
        for(;j>0&&arr[j-1]>e;--j)
        {
            arr[j]=arr[j-1];
        }
        arr[j]=e;
    }

}

 

共有 人打赏支持
粉丝 0
博文 13
码字总数 3204
×
潜水的挖掘机
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: