Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/373.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
选择排序在Java中的实现_Java - Fatal编程技术网

选择排序在Java中的实现

选择排序在Java中的实现,java,Java,我想我已经完成了选择排序,但我不确定。这真的是选择排序的实现吗 static void selectionSort() { int min = Integer.MIN_VALUE; int n = 0; for(int I=0; I<arraySize; I++) { min = dataArray[I]; for(int j=I; j<n; j++)

我想我已经完成了选择排序,但我不确定。这真的是选择排序的实现吗

static void selectionSort()
    {
        int min = Integer.MIN_VALUE;
        int n = 0;
        for(int I=0; I<arraySize; I++)
        {

            min = dataArray[I];
            for(int j=I; j<n; j++)
            {
                if(dataArray[min]<dataArray[j])
                  {
                        min = j;
                        if(dataArray[min] < dataArray[I])
                        {
                            int temp = dataArray[I];
                            dataArray[I] = dataArray[min];
                            dataArray[min] = temp;
                        }
                  }
            }
        }   
    }
static void selectionSort()
{
int min=Integer.min\u值;
int n=0;

对于(int I=0;I,我不确定我是否完全理解您的算法是如何工作的。具体来说,您确实理解

min = dataArray[i];
后来

dataArray[min]<dataArray[j]

dataArray[min]我完全不知道你的算法是如何工作的。具体来说,你知道

min = dataArray[i];
后来

dataArray[min]<dataArray[j]
dataArray[min]
公共类选择排序{
/**
*@作者Chandrasekhara Kota
*/
公共静态void main(字符串[]args){
int arr[]={9,1,8,5,7,-1,6,0,22718};
int-sortedar[]=选择排序(arr);
对于(int i=0;i
公共类选择排序){
/**
*@作者Chandrasekhara Kota
*/
公共静态void main(字符串[]args){
int arr[]={9,1,8,5,7,-1,6,0,22718};
int-sortedar[]=选择排序(arr);

对于(inti=0;i,这里是一个java中的选择排序实现-

public class SelectionSort {

static int intArray[] = { 10, 5, 100, 1, 10000 };

public static void doSort() {
    for (int outer = 0; outer < intArray.length; outer++) {
        int minPosition=outer;
        for(int inner=outer;inner<intArray.length;inner++){
            if(intArray[inner]<intArray[minPosition]){
                minPosition=inner;
            }
        }
        int temp=intArray[minPosition];
        intArray[minPosition]=intArray[outer];
        intArray[outer]=temp;
    }
}

public static void printArray() {
    for (int i = 0; i < intArray.length; i++) {
        System.out.print("  " + intArray[i]);
    }
}

public static void main(String args[]) {
    System.out.print("Array Before Sorting->");
    printArray();
    doSort();
    System.out.print("\nArray After Sorting ->");
    printArray();
}
公共类选择排序{
静态int intArray[]={10,5100,11000};
公共静态void doSort(){
对于(int-outer=0;outer对于(intinner=outer;inner,这里是一个java中的选择排序实现-

public class SelectionSort {

static int intArray[] = { 10, 5, 100, 1, 10000 };

public static void doSort() {
    for (int outer = 0; outer < intArray.length; outer++) {
        int minPosition=outer;
        for(int inner=outer;inner<intArray.length;inner++){
            if(intArray[inner]<intArray[minPosition]){
                minPosition=inner;
            }
        }
        int temp=intArray[minPosition];
        intArray[minPosition]=intArray[outer];
        intArray[outer]=temp;
    }
}

public static void printArray() {
    for (int i = 0; i < intArray.length; i++) {
        System.out.print("  " + intArray[i]);
    }
}

public static void main(String args[]) {
    System.out.print("Array Before Sorting->");
    printArray();
    doSort();
    System.out.print("\nArray After Sorting ->");
    printArray();
}
公共类选择排序{
静态int intArray[]={10,5100,11000};
公共静态void doSort(){
对于(int-outer=0;outer对于(int-inner=outer;inner如果在内部循环中你有一个类似
j的条件,这怎么可能起作用呢如果在内部循环中你有一个类似
ji的条件,给j分配相同的i值
for(int-j=i;jHaha,这似乎也是一个小问题;-)我给j分配相同的i值
(intj=I;jHaha,不,这似乎也是个小问题;-)