zoukankan      html  css  js  c++  java
  • 自己写了个希尔排序

    #include<iostream>
    
    using namespace std;
    
    //希尔排序,步长每次减半
    void ShellSort(int ndata,int data[])
    {
        int i, j, k;
        int tmp;
        for (i = ndata / 2; i > 0; i = i / 2)    //步长减半
        {
            for (j = i; j < ndata; j++)
            {
                tmp = data[j];
                for (k = j; k - i >= 0; k = k - i)
                {
                    if (data[k - i]>tmp)
                    {
                        data[k] = data[k - i];
                    }
                    else
                    {
                        break;
                    }
                }
                data[k] = tmp;
            }
        }
    }
    
    int main()
    {
        int ndata;
        int data[1000];
        cin >> ndata;
        for (int i = 0; i < ndata; i++)
        {
            cin >> data[i];
        }
        ShellSort(ndata, data);//
        cout << "排序后:" << endl;
        for (int i = 0; i < ndata; i++)
        {
            cout << data[i] << endl;
        }
        return 0;
    }
  • 相关阅读:
    数据结构 1
    MyBatis 7
    MyBatis 6
    MyBatis 5
    MaBatis 4
    MyBatis 3
    目录和文件管理
    Linux常用命令精讲
    Sentos7.4安装说明
    RIP
  • 原文地址:https://www.cnblogs.com/pplxlee/p/5507696.html
Copyright © 2011-2022 走看看