zoukankan      html  css  js  c++  java
  • 递归插入排序

    递归插入排序代码可以让你一目了然:

    package 递归插入排序;
    
    import java.util.Arrays;
    import java.util.*;
    
    public class insert_sort {
        public static void main(String[] args) {
            int data[] = new int[5];
            for(int i=0; i<data.length; i++) {
                Scanner sc = new Scanner(System.in);
                data[i] = (int)sc.nextInt();
            }
            insertSort(data,data.length);
        }
        public static void insertSort(int[] data,int n) {
            //索引
            int index;
            //保存递归数组的最后一个数
            int temp;
            //指向倒数第二个数
            n = n-1;
            //如果n=0则是基础步,一个数是有序的
            if(n>0) {
                //递归调用,当调用到第一个元素时出栈,这是数组有两个元素
                insertSort(data, n);
                //将第n个元素保存到temp中
                temp = data[n];
                //索引移到下一个元素
                index = n-1;
                //比较第n个元素和第n-1个元素的大小
                while(index>=0 && data[index]>temp) {
                    data[index+1] = data[index] ;
                    index = index-1;
                }
                data[index+1] = temp;
                System.out.println("第"+n+"次排序:"+Arrays.toString(data));
            }
        }
    }

    运行控制台:

     

  • 相关阅读:
    C#面向对象
    C#语句
    C#语言数据类型
    Jupyter Notebook(iPython)
    BeautifulSoup模块
    requests模块
    爬虫基本原理
    版本控制系统
    支付宝支付
    django内置组件——ContentTypes
  • 原文地址:https://www.cnblogs.com/x-ll123/p/7994387.html
Copyright © 2011-2022 走看看