zoukankan      html  css  js  c++  java
  • 冒泡排序BubbleSort

    /**
     * 
     * @author Administrator
     * 功能:交换式排序之冒泡排序
     */
    package com.test1;
    
    import java.util.Calendar;
    
    public class BubbleSort {
    
        public static void main(String[] args) {
            // TODO Auto-generated method stub
    
            int[] arr = new int[50000];
            for (int i = 0; i < arr.length; i++) {
                //让程序随机产生一个1 - 10000个数
                //Math.random会产生一个0到1的数
                arr[i] = (int)(Math.random()*50000);
            }
            //int[] arr = { 1, 6, 0, -1, 9, -100, -90 };
            // 排序开始
            // 外层循环,它可以决定一共走几趟
    
            Bubble bubble = new Bubble();
            //在排序前打印系统时间
            //Calendar是单开模式,在系统里面只有一个,且只需要一个实例,不是new 出来的
            //Java共有23中模式
            Calendar cal = Calendar.getInstance();
            System.out.println("排序前:"+cal.getTime());
            bubble.sort(arr);
            //在排序后打印系统时间
            //因为是单开的,所有首先重新得到实例
            cal = Calendar.getInstance();
            System.out.println("排序后:"+cal.getTime());
    //        System.out.println("冒泡结束后结果是:");
    //        for (int i = 0; i < arr.length; i++) {
    //            System.out.print(arr[i] + " ");
    //        }
    
        }
    
    }
    
    class Bubble {
    
        // 排序方法
        public void sort(int[] arr) {
            for (int i = 0; i < arr.length - 1; i++) {
                // 内层循环,开始逐个比较,如果发现
                // 前一个数比后一个数大,则交换
                for (int j = 0; j < arr.length - 1 - i; j++) {
                    if (arr[j] > arr[j + 1]) {
                        int temp = arr[j];
                        arr[j] = arr[j + 1];
                        arr[j + 1] = temp;
                    }
                }
            }
    
            // //简单数据类型会开辟另一个栈,复合类型会改变
            // public void swap(int a, int b)
            // {
            // if(a > b)
            // {
            // int temp = a;
            // a = b;
            // b = temp;
            // }
            // }
        }
    }
  • 相关阅读:
    SQL 高级语法 (一)
    SQL 基础语法
    Memcache数据备份和还原
    OSPF原理及配置
    kubernetes全栈监控部署
    非容器化Jenkins连接Kubernetes
    Jenkins+Ansible安装部署
    Gitlab+Nexus Maven部署
    部署docker私有仓库Harbor
    LVS实现Kubernetes集群高可用
  • 原文地址:https://www.cnblogs.com/beautiful-code/p/5344370.html
Copyright © 2011-2022 走看看