求JAVA冒泡排序法的代码

第一次上JAVA课,很多东西还没学,代码越简单越好。使用命令符连续传递参数方式,向程序连续传递任意个整数参数,然后按照冒泡排序的原理在程序中实现参数由小到大排序,并显示排... 第一次上JAVA课,很多东西还没学,代码越简单越好。
使用命令符连续传递参数方式,向程序连续传递任意个整数参数,然后按照冒泡排序的原理在程序中实现参数由小到大排序,并显示排序后的结果。
要求:
 必须严格按照冒泡排序原理实现,不能采用Java API中的特定已有方法实现。
 如果命令符下执行时没有传递参数或者参数类型不正确,则显示提示信息。
 显示结果中必须输出本人的名字、班级和学号信息
提示:
 通过main(String[] args)方法中的字符串数组获取命令行传递的参数
 注意从Stringint的类型转换,可以使用Integer类中的parseInt()方法(查阅JDK API文档)。
 数组的创建与使用
 冒泡排序算法
展开
 我来答
匿名用户
2013-09-11
展开全部
public class BubbleSort {
public static void main(String[] args) {
int []array={63,4,24,1,3,15};
BubbleSort sorter=new BubbleSort();
}
public void sort(int []array){
for(int i=1;i<array.length;i++){
for (int j=0;j<array.length-i;j++){
if(array[j]>array[j+1]){
int temp=array[j];
array[j]=array[j+1];
array[j+1]=temp;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
墨渍
2011-09-21 · TA获得超过2167个赞
知道大有可为答主
回答量:3442
采纳率:20%
帮助的人:947万
展开全部
class MaoPao
{
public static void main(String[] args)
{
int mp[]=new int [args.length];
for (int i=0;i<args.length ;i++ )
{
mp[i]=Integer.parseInt(args[i]);
}
for (int i=0;i<mp.length ;i++ )
{
for (int j=0;j<mp.length ;j++ )
{
int temp;
if (mp[i]<mp[j])
{
temp=mp[j];
mp[j]=mp[i];
mp[i]=temp;
}
}
}
for (int i=0;i<mp.length ;i++ )
{
System.out.print(mp[i]+" ");
}
System.out.print("\n-----名字、班级、学号");

}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
呆呆的书童乐园
2019-12-05 · TA获得超过4680个赞
知道小有建树答主
回答量:4228
采纳率:48%
帮助的人:120万
展开全部
冒泡排序是比较经典的排序算法。代码如下:

for(int i=1;i<arr.length;i++){
for(int j=1;j<arr.length-i;j++){
//交换位置
}

拓展资料:

原理:比较两个相邻的元素,将值大的元素交换至右端。

思路:依次比较相邻的两个数,将小数放在前面,大数放在后面。即在第一趟:首先比较第1个和第2个数,将小数放前,大数放后。然后比较第2个数和第3个数,将小数放前,大数放后,如此继续,直至比较最后两个数,将小数放前,大数放后。重复第一趟步骤,直至全部排序完成。

第一趟比较完成后,最后一个数一定是数组中最大的一个数,所以第二趟比较的时候最后一个数不参与比较;

第二趟比较完成后,倒数第二个数也一定是数组中第二大的数,所以第三趟比较的时候最后两个数不参与比较;

依次类推,每一趟比较次数-1;

……

举例说明:要排序数组:int[] arr={6,3,8,2,9,1};

for(int i=1;i<arr.length;i++){
for(int j=1;j<arr.length-i;j++){
//交换位置
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Laowan22004256
2011-09-22
知道答主
回答量:9
采纳率:0%
帮助的人:4.5万
展开全部
public class BubbleSort {
public static void main(String[] args)
{
if(args.length<=0)
{
System.out.println("there is not a input ,program will exit!");
System.exit(0);
}
String array=args[0];
sort(array);
System.out.println();
for(int i=1;i<args.length;i++)
System.out.println(args[i]);
}
public static void sort(String array)
{
int[] sortArray=stringToNumber(array);
int cur;
System.out.println("before sort");
printArray(sortArray);
for(int i=0;i<sortArray.length;i++)
{
for(int j=0;j<sortArray.length-i-1;j++)
{
if(sortArray[j]>sortArray[j+1])
{
cur=sortArray[j+1];
sortArray[j+1]=sortArray[j];
sortArray[j]=cur;
}
}
}
System.out.println("after sort:");
printArray(sortArray);
}
public static int[] stringToNumber(String array)
{
int[] a=new int[array.length()];
for(int i=0;i<array.length();i++)
{
if(!(array.charAt(i)>='0'&&array.charAt(i)<='9'))
{
System.out.println("input contains nonNumber,program will exit!");
System.exit(0);
}
a[i]=array.charAt(i)-48;
}
return a;
}
public static void printArray(int[] a)
{
for(int i=0;i<a.length;i++)
System.out.print(a[i]+" ");
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
小笨孩霄霄
2012-03-01
知道答主
回答量:2
采纳率:0%
帮助的人:3285
展开全部
public class BubbleSortTest
{
public static void bubbleSort(int[] array)
{
for(int i = 0; i < array.length - 1; i++)
{
for(int j = 0; j < array.length - i - 1; j++)
{
if(array[j] > array[j + 1])
{
int temp = array[j];
array[j] = array[j + 1];
array[j + 1] = temp;
}

}

System.out.println("第" + (i + 1) + "趟排序");

for(int k = 0; k < array.length; k++)
{
System.out.print(array[k] + " ");
}

System.out.println();

}
}

public static void main(String[] args)
{
int[] array = {4, 7, 8, 9, 3, 2};

bubbleSort(array);

}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式