插入排序法——C++和Python实现

插入排序法

插入排序法类似于打扑克摸牌时的情况,每抽到一张牌都会根据牌面大小选择一个合适它的位置。插入排序法类似于此。所以插入排序法非常试用于被排序集合中有一定数量已经排序好的数列。

C++
#include<iostream>
using namespace std;
int main(){
    int i,j,n,v,i1;
    cout<<"输入排序数量:"<<endl;
    cin>>n;
    int a[n];
    for(i=0;i<n;i++){
        cout<<"输入第"<<i+1<<"数:";
        cin>>a[i];
    }
    for(i=0;i<n;i++){
        v=a[i];
        j=i-1;
        while(j>=0&&a[j]>v){
            a[j+1]=a[j];
            j--;
        }
        a[j+1]=v;
        cout<<"第"<<i+1<<"次:";
        for(i1=0;i1<n;i1++){

            cout<<a[i1]<<",";
        }
        cout<<endl;
    }
    return 0;
}
python
###插入排序法
class sort:
    def list_sort(self):
        print("请输入要排序的数量n:")
        n=int(input())
        A=[None]*n
        for i in range(0,n):
            print("输入第"+str(i+1)+"个数")
            A[i]=input()
        for i in range(0,n):
            sr=A[i]
            j=i-1
            while j>=0 and A[j]>sr :
                A[j+1]=A[j]
                j-=1
            A[j+1]=sr
            for i in range(len(A)):
                print(A[i],end="")
            print()
if __name__ == '__main__':
    a=sort
    a.list_sort(self=True)
——————————————————————————————————————————————————
请输入要排序的数量n:
5
输入第1个数
5
输入第2个数
4
输入第3个数
3
输入第4个数
2
输入第5个数
1
54321
45321
34521
23451
12345

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值