选择排序在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,不,这似乎也是个小问题;-)