JAva初心者ノート7最小、最大、並べ替えを探す
3214 ワード
1.最小数
2.配列の最小数
3.並べ替え、大数後置
// 1.0
public class SortDemo1 {
public static void main(String[] args) {
int[] a = {2,5,4,6,8,1,3,9};
int min = a[0];//
int k = 0;
int temp;
for(int i = 0; i < a.length; i++ ) {
System.out.print( a[i] + "\t");
}
//
for(int j = 0; j < a.length; j++ ) {
if( min > a[j]) {
k = j;
min = a[j];
}
}
temp = a[0];
a[0] = a[k];
a[k] = temp;
System.out.println("
: " + min);
System.out.println(" : " + k);
System.out.println("a[5] : " + a[k]);
System.out.println("a[0] : " + a[0]);
for(int i = 0; i < a.length; i++ ) {
System.out.print( a[i] + "\t");
}
}
}
2.配列の最小数
// 1.1
public class SortDemo2 {
public static void main(String[] args) {
int[] a = {0,2,5,2,5,0};
int min = a[0];//
int k = 0;
int temp;
System.out.print( " : ");
for(int i = 0; i < a.length; i++ ) {
System.out.print( a[i] + "\t");
}
//
for(int i = 0; i < a.length - 1; i++ ) {
k = i; //
//
for(int j = i; j < a.length; j++ ) {//
if( a[k] > a[j]) {//a[k]
k = j;
}
}
//
if(k != i) {
temp = a[i];// 0 0 k == i
a[i] = a[k];
// System.out.print(".temp = " + temp + " : a[k] = " + a[k] + " : a[i] = " + a[i]);
a[k] = temp;
}
/*
System.out.print( "
");
for(int x = 0; x < a.length; x++ ) {
System.out.print( a[x] + "\t");
}
*/
}
System.out.print( "
");
System.out.print( " : ");
for(int i = 0; i < a.length; i++ ) {
System.out.print( a[i] + "\t");
}
}
}
3.並べ替え、大数後置
// 1.1
public class SortDemo3 {
public static void main(String[] args) {
int[] a = {7,5,6,3,2,1,4,9,8,6};
int temp;
System.out.print( " : ");
for(int i = 0; i < a.length; i++ ) {
System.out.print( a[i] + "\t");
}
// 8
for(int i = 0; i < a.length - 1; i++ ) {
//
for(int j = 0; j < a.length - 1 - i; j++ ) { // 0 - 3
if( a[j] > a[j+1] ) { //
temp = a[j];
a[j] = a[j+1];
a[j+1] = temp;
}
}
}
System.out.print( "
");
System.out.print( " : ");
for(int i = 0; i < a.length; i++ ) {
System.out.print( a[i] + "\t");
}
}
}