精华内容
下载资源
问答
  • 选择排序java 代码

    2015-08-18 05:57:11
    选择排序java代码,运行方法写在里面,分享给大家。
  • 选择排序 java代码

    2019-03-30 05:47:45
    //选择排序的优化 for(int i = 0; i ; i++) {// 做第i趟排序 int k = i; for(int j = k + 1; j ; j++){// 选最小的记录 if(arr[j] [k]){ k = j; //记下目前找到的最小值所在的位置 } } //在内层循环结束,...
    
    public class SelectionSort {
    
    
        public static void main(String[] args) {
            int[] arr={1,3,2,45,65,33,12};
            System.out.println("交换之前:");
            for(int num:arr){
                System.out.print(num+" ");
            }
            //选择排序的优化
            for(int i = 0; i < arr.length - 1; i++) {// 做第i趟排序
                int k = i;
                for(int j = k + 1; j < arr.length; j++){// 选最小的记录
                    if(arr[j] < arr[k]){
                        k = j; //记下目前找到的最小值所在的位置
                    }
                }
                //在内层循环结束,也就是找到本轮循环的最小的数以后,再进行交换
                if(i != k){  //交换a[i]和a[k]
                    int temp = arr[i];
                    arr[i] = arr[k];
                    arr[k] = temp;
                }
            }
            System.out.println();
            System.out.println("交换后:");
            for(int num:arr){
                System.out.print(num+" ");
            }
        }
    
    
    
    
    }
    public class SelectionSort {
    
    
        public static void main(String[] args) {
            int[] arr={1,9,11,90,67,111,36};
            System.out.println("交换之前:");
            for(int num:arr){
                System.out.print(num+" ");
            }
            //选择排序的优化
            for(int i = 0; i < arr.length - 1; i++) {// 做第i趟排序
                int k = i;
                for(int j = k + 1; j < arr.length; j++){// 选最小的记录
                    if(arr[j] < arr[k]){
                        k = j; //记下目前找到的最小值所在的位置
                    }
                }
                //在内层循环结束,也就是找到本轮循环的最小的数以后,再进行交换
                if(i != k){  //交换a[i]和a[k]
                    int temp = arr[i];
                    arr[i] = arr[k];
                    arr[k] = temp;
                }
            }
            System.out.println();
            System.out.println("交换后:");
            for(int num:arr){
                System.out.print(num+" ");
            }
        }
    
    
    
    
    }
    
    
    展开全文
  • 选择排序java代码

    2015-09-08 20:21:00
    * 选择排序 * * 原理:将最小值与数组第1个即array[0]交换,第二次则忽略array[0],直接从array[1]至array[array.length-1]中 * 选择出最小值与array[1]交换,以此类推 * * 与冒泡排序法区别在于交换次数...
    /**
         * 选择排序
         * 
         * 原理:将最小值与数组第1个即array[0]交换,第二次则忽略array[0],直接从array[1]至array[array.length-1]中
         * 选择出最小值与array[1]交换,以此类推
         * 
         * 与冒泡排序法区别在于交换次数减少
         * @param a
         * @return 
         */
        public long[] SelectSort(long[] a){
            
            for(int i=0 ; i < a.length ; i++){
                int minIndex = i;
                for(int j=i+1 ; j < a.length ; j++){
                    if(a[minIndex] > a[j]){
                        minIndex = j;
                    }
                }
                if(i != minIndex){
                    a[i] = a[i] ^ a[minIndex];
                    a[minIndex] = a[minIndex] ^ a[i];
                    a[i] = a[i] ^ a[minIndex];
                }
                
            }
            
            return a;
        }
    原理:将最小值与数组第1个即array[0]交换,第二次则忽略array[0],直接从array[1]至array[array.length-1]中选择出最小值与array[1]交换,以此类推。

    转载于:https://www.cnblogs.com/orlion/p/4792827.html

    展开全文
  • 冒泡和选择排序Java代码实现,简单的算法,适合新手入门级程序。
  • 选择排序Java代码实现

    2018-07-29 22:05:00
    核心思想:选择排序的核心思想为,遍历无序数组,每次将最小的数放置在已排好序的数组的尾端,遍历至数组倒数第二位时,数组已排好序。 以下为插入排序代码: 1 package com.cmbc.test1; 2 3 import java....

    插入排序复习:

    插入排序特点:插入排序是基于比较的排序,时间复杂度为O(n^2),额外空间复杂度为O(1),实现可做到稳定

    核心思想:选择排序的核心思想为,遍历无序数组,每次将最小的数放置在已排好序的数组的尾端,遍历至数组倒数第二位时,数组已排好序。

    以下为插入排序代码:

      1 package com.cmbc.test1;
      2 
      3 import java.util.Arrays;
      4 
      5 /**
      6  * 选择排序
      7  * @author itqcy
      8  *
      9  */
     10 public class SelectionSort {
     11     
     12     public static void selectionSort(int[] arr){
     13         if(arr==null||arr.length<2){
     14             return;
     15         }
     16         for(int i = 0;i<arr.length-1;i++){
     17             int min = i;
     18             for(int j = i+1;j<arr.length;j++){
     19                 min = arr[min]<arr[j]?min:j;
     20             }
     21             swap(arr,i,min);
     22         }
     23     }
     24     
     25     
     26     public static void swap(int[] arr, int i, int j) {
     27         int tmp = arr[i];
     28         arr[i] = arr[j];
     29         arr[j] = tmp;
     30     }
     31     
     32     public static void printArray(int[] arr) {
     33         if (arr == null) {
     34             return;
     35         }
     36         for (int i = 0; i < arr.length; i++) {
     37             System.out.print(arr[i] + " ");
     38         }
     39         System.out.println();
     40     }
     41     
     42     public static int[] copyArray(int[] arr) {
     43         if (arr == null) {
     44             return null;
     45         }
     46         int[] res = new int[arr.length];
     47         for (int i = 0; i < arr.length; i++) {
     48             res[i] = arr[i];
     49         }
     50         return res;
     51     }
     52     
     53     public static boolean isEqual(int[] arr1,int[] arr2){
     54         if((arr1==null&&arr2!=null)||(arr1!=null&&arr2==null)){
     55             return false;
     56         }
     57         if(arr1==null&&arr2==null){
     58             return true;
     59         }
     60         if(arr1.length!=arr2.length){
     61             return false;
     62         }
     63         for(int i = 0;i<arr1.length;i++){
     64             if(arr1[i]!=arr2[i]){
     65                 return false;
     66             }
     67         }
     68         return true;
     69     }
     70     
     71     public static int[] generateRandomArray(int maxSize,int maxValue){
     72         int[] arr = new int[(int)((maxSize+1)*Math.random())];
     73         for(int i = 0;i<arr.length;i++){
     74             arr[i] = (int)((maxValue+1)*Math.random())-(int)((maxValue+1)*Math.random());
     75         }
     76         return arr;
     77     }
     78     public static void main(String[] args) {
     79         int testTime = 500000;
     80         int maxSize = 100;
     81         int maxValue = 100;
     82         boolean succeed = true;
     83         for (int i = 0; i < testTime; i++) {
     84             int[] arr1 = generateRandomArray(maxSize, maxValue);
     85             int[] arr2 = copyArray(arr1);
     86             selectionSort(arr1);
     87             Arrays.sort(arr2);
     88             if (!isEqual(arr1, arr2)) {
     89                 succeed = false;
     90                 printArray(arr1);
     91                 printArray(arr2);
     92                 break;
     93             }
     94         }
     95         System.out.println(succeed ? "选择排序结果正确!" : "选择排序结果错误");
     96 
     97         int[] arr = generateRandomArray(maxSize, maxValue);
     98         printArray(arr);
     99         selectionSort(arr);
    100         printArray(arr);
    101     }
    102     
    103 }

     

    转载于:https://www.cnblogs.com/itqczzz/p/9387923.html

    展开全文
  • 选择排序java代码实现

    2019-01-10 16:43:42
    public class ChoiceSort { public static int[] sort(int[] array){ //总共要经过N-1轮比较 for(int i = 0 ;... System.out.println("经过选择排序后的数组顺序为:"); display(array); } }  
    public class ChoiceSort {
        public static int[] sort(int[] array){
            //总共要经过N-1轮比较
            for(int i = 0 ; i < array.length-1 ; i++){
                int min = i;
                //每轮需要比较的次数
                for(int j = i+1 ; j < array.length ; j++){
                    if(array[j]<array[min]){
                        min = j;//记录目前能找到的最小值元素的下标
                    }
                }
                //将找到的最小值和i位置所在的值进行交换
                if(i != min){
                    int temp = array[i];
                    array[i] = array[min];
                    array[min] = temp;
                }
                //第 i轮排序的结果为
                System.out.print("第"+(i+1)+"轮排序后的结果为:");
                display(array);
            }
            return array;
        }
     
        //遍历显示数组
        public static void display(int[] array){
            for(int i = 0 ; i < array.length ; i++){
                System.out.print(array[i]+" ");
            }
            System.out.println();
        }
         
        public static void main(String[] args){
            int[] array = {4,2,8,9,5,7,6,1,3};
            //未排序数组顺序为
            System.out.println("未排序数组顺序为:");
            display(array);
            System.out.println("-----------------------");
            array = sort(array);
            System.out.println("-----------------------");
            System.out.println("经过选择排序后的数组顺序为:");
            display(array);
        }
    }

     

    展开全文
  • MyBatis可以使用简单的XML或注解进行配置和原始映射,以将接口和Java的POJO (Plain Old Java Objects,普通的Java对象)映射成数据库中的记录。 MyBatis作为持久层框架,其主要思想是将程序中的大量SQL语句剥离出来...
  • 冒泡、直接插入、简单选择排序代码 //冒泡排序 public class NowSelectSort { public static void sort(int[] arr){ for (int i = 0; i < arr.length; i++) { int temp = arr[i]; //存储遍历时的最小值 int ...
  • import java.util.Arrays; /** * Created by Administrator on 2017/8/2. */ public class directSelectSort_select {//比较+交换 public static void main(String args[]) { int[] arr = { 6, 9, 1, 3,
  • 选择排序算法java代码

    2012-08-11 23:32:58
    选择排序算法java代码,望对大家有帮助,谢谢!
  • 使用Java代码实现选择排序Java

    千次阅读 2018-06-12 15:17:51
    1.算法思想: 首先找到数组中最小的那个元素,其次,将它和数组的第一个元素交换位置(如果第一个元素就是最小元素,那么它就和自己交换。如果只剩下最后一个元素,就没必要排了,它就是最大的...2.Java代码实现:p...
  • 这种排序方式是最简单的,4, 3, 6, 7来当作一个例子(从小到大排序),每一次进行排序选择第一个4与后面的3进行比较然后4比3大交换位置,4与6比较6大不变,6与7比较7大不变,这样一趟之后最大的值就到了最后的位置...
  • 选择排序JAVA实现代码

    2020-05-27 11:48:28
    * 选择排序 * 每次选择一个最小的放在第一个位置,然后比对剩下的取最小值 * 以此类推 */ public static void selectSort() { int arr[] = { 22, 5, 6, 9, 87, 7, 1 }; for (int i = 0; i < arr....
  • 选择排序Java代码

    2019-12-16 14:44:29
    public class Test { /** * 选择排序 * * @param array */ public static void selectSort(int[] array) { if (array == null) { return; } int n = a...
  • 选择排序java代码实现,下列代码实现了倒序排列
  • JAVA选择排序代码

    2021-01-30 15:41:39
    选择排序算法学习使用代码如下 import untils.AlgorithmUtils; import java.util.Arrays; /** * 选择排序 * <p> * 第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置, * ...
  • 选择排序、冒泡排序、插入排序(Java代码)工具类:1、选择排序冒泡排序插入排序 工具类: import java.util.Arrays; /** * * @title: ArrayUtils * @Date: 2020.11.26 15:10 */ public class ArrayUtils { ...
  • 插入排序Java代码

    2010-11-02 23:16:05
    选择排序和冒泡排序想必大家都很熟悉,但插入排序一般新手却很难理解,插入排序的Java代码
  • 选择排序java代码实现

    千次阅读 2018-10-30 20:38:00
    一、选择排序算法的思想: 对于给定数组:int[] arr={a1,a2,a3....an},每一次选择未排序序列的最小的元素放在已经排序序列的后面,经过N次排序以后,数组就是有序的。如:第一次选择,已排序序列是空,未排序序列...
  • 主要介绍了Java使用选择排序法对数组排序实现代码,需要的朋友可以参考下
  • 交换排序之快速排序 Java代码 概念:在序列上找到一个pivot(基准),然后通过一次快速排序后,就会找到pivot在序列的位置,此时该序列以pivot基准划分为一个比pivot小的元素都在pivot的左边,比pivot大的元素都在...
  • 选择排序Java代码实现)

    千次阅读 2018-09-10 22:09:57
    选择排序是不稳定的排序方法。从选择排序的思想出发,我们都不难看出: 寻找最小的元素需要一层循环 逐个被选出也是需要一层循环的 下面是实现的代码: package array; /* * 选择排序: 3,1,5,2,4,9,6,8,7 * ...
  • * 排序 * 平均时间复杂度: * nLogn:快排、堆排序、归并排序 (递归) * d(n+r):基数排序 * n^2:其它 * 空间复杂度: * Logn:快排 (递归) * n:归并排序 (一个额外数组) * r:基数排序 * ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 2,886
精华内容 1,154
关键字:

选择排序java代码

java 订阅