Java实现冒泡排序:原理及代码详解
冒泡排序如何使用Java语言完成?
冒泡排序原理:
从第一项开始,依次比较相邻的两项,直到比较完最后两项。
如果前一个项目大于下一个项目,则交换位置。
整个过程完成后,最后一个元素为最大值,第一轮比较完成,后续的比较通过for循环依次完成。
操作码如下:
packageday01;
publicclass冒泡{
publicstaticvoidmain(String[]args){
int[]arr=newint[]{12,45,33,46,3};
System.out.println("排序前先排列项目:");
for(inti=0;i { System.out.print(arr[i]+""); } intt; for(intj=0;j { for(intx=0;x { { t=arr[x]; arr[x]=arr[x+1]; arr[x+1]=t; } System.out.println(); System.out.println("对元素顺序进行排序后:"); for(intk=0;k { System.out.print(arr[k]+""); } 截图至显示结果: 扩展信息: (1)在每轮中冒泡排序,将最大的元素放在数组末尾 (2)如果想达到闪回比较结果,可以将代码中的大小判断部分改为下面的代码。 { t=arr[x]; arr[x]=arr[x+1]; arr[x+1]=t; } (3)使用知识点:使用数组长度、数组定义和循环嵌套。 冒泡排序的原理: 从第一个元素开始,依次比较两个相邻元素,直到比较完最后两个元素。 当前运行的代码是: packageday01; publicclassbubbling{ publicstaticvoidmain(String[]args){ publicclassbubbling{ publicstaticvoidmain(String[]args){ int[]arr=newint[]{12,45,33,46,3}; System.out.println("排序前元素的顺序:"); for(inti=0;i { System.out.print(arr[i]+""); } intt; for(intj=0;j { for(intx=0;x { { t=arr[x]; arr[x]=arr[x+1]; arr[x+1]=t; } } } 系统.out.println(); System.out.println("排序后元素的顺序:"); for(intk=0;k { System.out.print(arr[k]+""); } 运行结果截图: 扩展信息: (1)In每轮冒泡排序,最大的元素放在数组的末尾 (2)如果想要得到闪回比较输出,可以将代码中的大小判断部分改为下面的代码。 { t=arr[x]; arr[x]=arr[x+1]; arr[x+1]=t; } (3)使用知识:使用数组长度、数组定义和嵌套for循环。 冒泡排序 (1)基本思想:在一系列待排序的数字中,对于当前未排序范围内的所有数字,将相邻数字从上到下排序低两个数字依次进行比较和调整,使较大的数字下降,较小的数字上升。 (2)使用Java实现 Java代码:冒泡排序如何使用Java语言完成?
如果前一个元素大于后一个元素,则交换它们的位置。
整个过程完成后,最后一个元素为最大值,第一个比较循环完成,后续的比较通过for循环依次进行。用java冒泡排序和递归算法
即:每当比较两个相邻的数字,发现它们的排序与排序要求相反时,就将它们交换。
你可以利用简单化的思想,将一个大的、复杂的问题转化为与原来要解决的问题类似的小问题。
一个策略。
可见,我们可以用很少的指令解决非常大的问题,所以递归策略的主要表现就是用少量的代码解决非常复杂的问题。编写JAVA程序,用冒泡法对十个随机数由小到大顺序排序,输出排序后的结果
publicclassSequence02{publicstaticvoidmain(String[]args){int[]number=newint[10];/***生成10个随机数[0-100]。
j2se中的区间一般为[)*/for(inti=0;i
最大的是最大的是number.length*/intb;for(intj=0;j