java冒泡排序,选择排序
2014-05-10 16:40
405 查看
import java.util.Scanner;
public class zhangge {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int [] num = new int[10];
System.out.printf("请输入十个数字");
for(int i=0;i<10;i++)
{
num[i]= sc.nextInt();
}
ArraySort as= new ArraySort();
as.setArray(num);
as.bubbling();
System.out.printf("请输入十个数字");
for(int i=0;i<10;i++)
{
num[i]= sc.nextInt();
}
ArraySort as1= new ArraySort();
as1.setArray(num);
as1.opt();
}
}
public class ArraySort {
private int num[]=new int[10];
public void setArray(int[] num)
{
this.num = num;
}
//冒泡法排序
public void bubbling(){
// TODO Auto-generated method stub
int t;
for(int i=0;i<num.length;i++)//趟数
{
for(int j=0;j<num.length-i-1;j++)//比较次数
{
if(num[j]<num[j+1])
{
t=num[j];
num[j]=num[j+1];
num[j+1]=t;
}
}
}
for( int i=0;i<10;i++)
{
System.out.println(num[i]);
}
}
//选择法排序
public void opt(){
int k=0,t=0;
for(int i=0;i<num.length-1;i++)
/* 外循环控制趟数,n个数选n-1趟*/
{
k=i;
/*
假设当前趟的第一个数为最值,记在k中 */
for(int j=i+1;j<num.length;j++)
{/*
从下一个数到最后一个数之间找最值
*/
if(num[k]<num[j]) {
/*
若其后有比最值更大的
*/
k=j;}
}
/*
则将其下标记在k中*/
if(k!=i)
/*
若k不为最初的i值,说明在其后找到比其更大的数*/
{
t=num[k];
num[k]=num[i];
num[i]=t;
}
/*
则交换最值和当前序列的第一个数
*/
}
for( int i=0;i<10;i++)
{
System.out.println(num[i]);
}
}
}
public class zhangge {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
int [] num = new int[10];
System.out.printf("请输入十个数字");
for(int i=0;i<10;i++)
{
num[i]= sc.nextInt();
}
ArraySort as= new ArraySort();
as.setArray(num);
as.bubbling();
System.out.printf("请输入十个数字");
for(int i=0;i<10;i++)
{
num[i]= sc.nextInt();
}
ArraySort as1= new ArraySort();
as1.setArray(num);
as1.opt();
}
}
public class ArraySort {
private int num[]=new int[10];
public void setArray(int[] num)
{
this.num = num;
}
//冒泡法排序
public void bubbling(){
// TODO Auto-generated method stub
int t;
for(int i=0;i<num.length;i++)//趟数
{
for(int j=0;j<num.length-i-1;j++)//比较次数
{
if(num[j]<num[j+1])
{
t=num[j];
num[j]=num[j+1];
num[j+1]=t;
}
}
}
for( int i=0;i<10;i++)
{
System.out.println(num[i]);
}
}
//选择法排序
public void opt(){
int k=0,t=0;
for(int i=0;i<num.length-1;i++)
/* 外循环控制趟数,n个数选n-1趟*/
{
k=i;
/*
假设当前趟的第一个数为最值,记在k中 */
for(int j=i+1;j<num.length;j++)
{/*
从下一个数到最后一个数之间找最值
*/
if(num[k]<num[j]) {
/*
若其后有比最值更大的
*/
k=j;}
}
/*
则将其下标记在k中*/
if(k!=i)
/*
若k不为最初的i值,说明在其后找到比其更大的数*/
{
t=num[k];
num[k]=num[i];
num[i]=t;
}
/*
则交换最值和当前序列的第一个数
*/
}
for( int i=0;i<10;i++)
{
System.out.println(num[i]);
}
}
}
相关文章推荐
- java冒泡排序,选择排序
- 深入Java冒泡排序与选择排序的区别详解
- java冒泡排序、选择排序、插入排序算法的核心思想及其比较
- Java冒泡排序、插入排序、选择排序、shell排序
- java冒泡排序和选择排序
- java冒泡排序和选择排序示例
- Java冒泡排序,选择排序,插入排序,希尔排序
- java冒泡排序 选择排序 算法
- java冒泡排序和选择排序和系统自动排序
- Java冒泡排序,插入排序,选择排序
- java冒泡排序和选择排序
- Java冒泡排序与直接选择排序代码随笔
- Java冒泡排序,插入排序,选择排序
- Java冒泡排序和选择排序
- java冒泡排序,选择排序,插入排序
- java排序算法学习(一)--选择排序
- 选择排序之简单选择排序
- 选择类排序:选择排序和堆排序
- 用python实现选择排序
- 选择排序 ruby