zoukankan      html  css  js  c++  java
  • 1209.2——直接插入排序算法

    #include <stdio.h>

    //直接插入排序 5,4,6,2,1

    //4 5 6

    //6

    void insertSort(int array[], int elementNum){

        int referenceNum = 0;//保存即将插入的那个值

        

        for (int i = 1; i < elementNum; i++) {

            referenceNum = array[i];

            

            int j = i - 1;

            //通过一个循环查找这个值应该插在哪个位置

            for (; j >= 0; j--) {

                if (array[j] > referenceNum) {

                    array[j+1] = array[j];

                } else{

                    //说明找到要插入的位置了

                    break;

                }

            }

            

            //1.根本就没有移动

            //2.已经移动过了

            if (j+1 != i) {

                //动过了

                array[j+1] = referenceNum;

            }

        }

    }

    int main(int argc, const char * argv[]) {

        int array[] = {5,4,6,2,1};

        

        insertSort(array, 5);

        

        for (int i = 0; i < 5; i++) {

            printf("%d ", array[i]);

        }

        printf(" ");

        return 0;

    }

  • 相关阅读:
    51单片机入门(三)
    51单片机入门笔记(二)
    51单片机入门笔记
    团队项目-需求分析报告
    团队项目-选题报告
    第一次结对编程作业
    第一次个人编程作业
    第一次博客作业
    tomcat的安装和配置
    循环
  • 原文地址:https://www.cnblogs.com/damonWq/p/5033034.html
Copyright © 2011-2022 走看看