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

    public class BubbleSort
        {
    
            /*
             * 冒泡排序
             *
             * 参数说明:
             *     a -- 待排序的数组
             *     n -- 数组的长度
             */
            public static void bubbleSort1(int[] a, int n)
            {
                int i, j;
    
                for (i = n - 1; i > 0; i--)
                {
                    // 将a[0...i]中最大的数据放在末尾
                    for (j = 0; j < i; j++)
                    {
    
                        if (a[j] > a[j + 1])
                        {
                            // 交换a[j]和a[j+1]
                            int tmp = a[j];
                            a[j] = a[j + 1];
                            a[j + 1] = tmp;
                        }
                    }
                }
            }
    
            /*
             * 冒泡排序(改进版)
             *
             * 参数说明:
             *     a -- 待排序的数组
             *     n -- 数组的长度
             */
            public static void bubbleSort2(int[] a, int n)
            {
                int i, j;
                int flag;                 // 标记
    
                for (i = n - 1; i > 0; i--)
                {
    
                    flag = 0;            // 初始化标记为0
                                         // 将a[0...i]中最大的数据放在末尾
                    for (j = 0; j < i; j++)
                    {
                        if (a[j] > a[j + 1])
                        {
                            // 交换a[j]和a[j+1]
                            int tmp = a[j];
                            a[j] = a[j + 1];
                            a[j + 1] = tmp;
    
                            flag = 1;    // 若发生交换,则设标记为1
                        }
                    }
    
                    if (flag == 0)
                        break;            // 若没发生交换,则说明数列已有序。
                }
            }
    
            public static void Main(String[] args)
            {
                int i;
                int[] a = { 10, 20, 30, 40, 50, 60 };
    
                Console.WriteLine("before sort:");
                for (i = 0; i < a.Length; i++)
                    Console.WriteLine("%d ", a[i]);
                Console.WriteLine("
    ");
    
                //bubbleSort1(a, a.Length);
                bubbleSort2(a, a.Length);
    
                //Console.WriteLine("after  sort:");
                //for (i = 0; i < a.Length; i++)
                //    Console.WriteLine("%d ", a[i]);
                //Console.WriteLine("
    ");
            }
        }
  • 相关阅读:
    接口测试
    jmeter直连数据库
    登录功能的测试用例设计
    oracle 同义词synonym
    oracle常用函数
    python环境搭建--pycharm的安装及使用
    JavaScript数组函数
    JavaScript:var、let、作用域
    HTML入门到精通(带你全面避坑)
    使用VirtualBox安装CentOS7
  • 原文地址:https://www.cnblogs.com/chrisghb8812/p/9351089.html
Copyright © 2011-2022 走看看