Java语言中选择排序和冒泡排序
2012-12-19 23:11
246 查看
/**
*
编写程序
1.定义排序类
方法:排序,显示
2.定义冒泡排序和选择排序两个子类
*/
//排序测试类(用抽象类来实现)
public class TestSort{
public static void main(String[] args){
int[] array=new int[]{
3,5,9,12,1,6
};
Sort s=new MaoPaoSort();
s.sort(array);
s.show(array);
s=new XuanZeSort();
s.sort(array);
s.show(array);
}
}
/**
*排序抽象类
*/
abstract class Sort {
public abstract void sort(int[] array);
public abstract void show(int[] array);
}
//冒泡排序类
class MaoPaoSort extends Sort{
//业务逻辑处理
public void sort(int[] array){
for(int i=0;i<array.length-1;i++){
for(int j=0;j<array.length-i-1;j++){
int t;
if(array[j]>array[j+1]){
t=array[j];
array[j]=array[j+1];
array[j+1]=t;
}
}
}
}
//遍历数组
public void show(int[] array){
for(int i=0;i<array.length;i++){
System.out.print(array[i]+" ");
}
System.out.println();
}
}
//选择排序类
class XuanZeSort extends Sort{
public void sort(int[] array){
for(int i=0;i<array.length;i++){
int k=i;
for(int j=i;j<array.length;j++){
if(array[k]>array[j]){
k=j;
}
}
int t=0;
t=array[k];
array[k]=array[i];
array[i]=t;
}
}
//遍历数组
public void show(int[] array){
for(int i=0;i<array.length;i++){
System.out.print(array[i]+" ");
}
System.out.println();
}
}
*
编写程序
1.定义排序类
方法:排序,显示
2.定义冒泡排序和选择排序两个子类
*/
//排序测试类(用抽象类来实现)
public class TestSort{
public static void main(String[] args){
int[] array=new int[]{
3,5,9,12,1,6
};
Sort s=new MaoPaoSort();
s.sort(array);
s.show(array);
s=new XuanZeSort();
s.sort(array);
s.show(array);
}
}
/**
*排序抽象类
*/
abstract class Sort {
public abstract void sort(int[] array);
public abstract void show(int[] array);
}
//冒泡排序类
class MaoPaoSort extends Sort{
//业务逻辑处理
public void sort(int[] array){
for(int i=0;i<array.length-1;i++){
for(int j=0;j<array.length-i-1;j++){
int t;
if(array[j]>array[j+1]){
t=array[j];
array[j]=array[j+1];
array[j+1]=t;
}
}
}
}
//遍历数组
public void show(int[] array){
for(int i=0;i<array.length;i++){
System.out.print(array[i]+" ");
}
System.out.println();
}
}
//选择排序类
class XuanZeSort extends Sort{
public void sort(int[] array){
for(int i=0;i<array.length;i++){
int k=i;
for(int j=i;j<array.length;j++){
if(array[k]>array[j]){
k=j;
}
}
int t=0;
t=array[k];
array[k]=array[i];
array[i]=t;
}
}
//遍历数组
public void show(int[] array){
for(int i=0;i<array.length;i++){
System.out.print(array[i]+" ");
}
System.out.println();
}
}
相关文章推荐
- Java程序语言 冒泡排序、选择排序、插入排序
- JAVA学习笔记---java语言实现冒泡排序,选择排序,反转排序
- Java程序语言 冒泡排序、选择排序、插入排序
- java中的冒泡排序与选择排序
- 黑马程序员——java基础排序算法:选择排序、冒泡排序和插入排序
- java实现冒泡排序,选择排序,直接插入排序,快速排序
- JAVA-5-String类和StringBuffer类、二维数组、形参、冒泡排序及选择排序、Arrays数组工具类
- 蛮力法在排序算法中的应用(JAVA)--选择排序、冒泡排序
- JAVA中常见的四种排序--冒泡排序、选择排序、插入排序和快速排序 详解
- JAVA基础再回首(十一)——数组高级(冒泡排序和选择排序)、Arrays类、基本类型包装类、Integer类
- (一)Java实现排序,选择排序,快速排序,冒泡排序,插入排序
- 实训java第五课 递归 冒泡排序 插入排序 选择排序
- 数据结构与算法(5)---Java语言实现:选择排序
- JAVA学习笔记之选择排序与冒泡排序
- java选择排序与冒泡排序
- Java常用排序算法冒泡排序与选择排序总结
- Java--选择排序,冒泡排序
- 选择排序和冒泡排序(JAVA)
- 元素排序几种常用的排序算法的分析及java实现(希尔排序,堆排序,归并排序,快速排序,选择排序,插入排序,冒泡排序)
- (13)数组操作:遍历、输出最大值、冒泡排序、选择排序,java已有的排序方法、折半查找