一个小冒泡程序

记的以前去面试,笔试题叫写一个冒泡程序,不懂得什么叫冒泡程序,乱忽悠给他打印出了 .ooooo0000000 人家崩溃了,我也崩溃了。 回来研究了一下 自己写一个
package paixu;

import java.util.Random;

public class Maopao {

public int[] ran() { //产生一个随机数 数组的类保证里面有复数
Random random = new Random();
int[] r = new int[10];
for (int i = 0; i < 10; i++) {
r[i] = random.nextInt(500) - random.nextInt(500);
}
return r;
}

public void result(int[] reslut) { //打印结果的类
for (int i : reslut) {
System.out.print(i + " ");
}
}

public void Replacement(int x, int y, int[] array) { //将数组转换位置
int temp = array[x];
array[x] = array[y];
array[y] = temp;

}

public void mao(int[] array, String str) {

if (str.equals("正序冒泡")) {
for (int i = 1; i < array.length; i++) {

for (int k = 0; k < array.length - i; k++) { //执行9次 循环 i不同
if (array[k] > array[k + 1]) { //当数组的 头一个数比下一个数大的时候
Replacement(k, k + 1, array); // 将他们的位置改变 调用 replacement类 形成冒泡排序
}
}
}
}
else if (str.equals("倒序冒泡")){
for(int i=1;i<array.length;i++){
for(int k =0;k<array.length-i;k++){ //执行9次 循环 i不同
if(array[k]<array[k+1]){ //当数组的 头一个数比下一个数小的时候
Replacement(k, k+1, array); //改变顺序 先从正数开始排
}
}
}
}

}

public static void main(String[] args) {
Maopao m = new Maopao();
int [] r = m.ran();
m.result(r);
System.out.println( " " );
m.mao(r, "正序冒泡");
System.out.println( "正序如下");
m.result(r);

m.mao(r, "倒序冒泡");

System.out.println(" ");
System.out.println("倒序如下");
m.result(r);
}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值