Python 官方文档:入门教程 => 点击学习
public class BubbleSort { public void sort(int[] array){ for(int i=1;i<
public class 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;
System.out.println("第-------"+j+"-------次");
}
System.out.println("第"+i+"轮");
showArray(array);
}
}
showArray(array);
}
public void showArray(int[] array){
for(int i:array){//遍历数组
System.out.print(" 》"+i);
}
System.out.println();
}
public static void main(String[] args) {
//创建一个数组,这个数组元素是乱序的
int[] array = {63,4,24,1,3,15};
System.out.println("数组长度:"+array.length);
System.out.println("=========================");
//创建冒泡排序类对象
BubbleSort sorter = new BubbleSort();
//调用排序方法将数组排序
sorter.sort(array);
}
显示结果
数组长度:6
=========================
第-------0-------次
第1轮
》4 》63 》24 》1 》3 》15
第-------1-------次
第1轮
》4 》24 》63 》1 》3 》15
第-------2-------次
第1轮
》4 》24 》1 》63 》3 》15
第-------3-------次
第1轮
》4 》24 》1 》3 》63 》15
第-------4-------次
第1轮
》4 》24 》1 》3 》15 》63
第2轮
》4 》24 》1 》3 》15 》63
第-------1-------次
第2轮
》4 》1 》24 》3 》15 》63
第-------2-------次
第2轮
》4 》1 》3 》24 》15 》63
第-------3-------次
第2轮
》4 》1 》3 》15 》24 》63
第-------0-------次
第3轮
》1 》4 》3 》15 》24 》63
第-------1-------次
第3轮
》1 》3 》4 》15 》24 》63
第3轮
》1 》3 》4 》15 》24 》63
第4轮
》1 》3 》4 》15 》24 》63
第4轮
》1 》3 》4 》15 》24 》63
第5轮
》1 》3 》4 》15 》24 》63
》1 》3 》4 》15 》24 》63
public class SelectSort {
public void sort(int[] array) {
int index;
for (int i = 1; i < array.length; i++) {
index = 0;
for (int j = 1; j <= array.length - i; j++)
if (array[j] > array[index]) {
index = j;
}
//交换位置array.length-i和index(最大值)上的两个数
int temp = array[array.length-i];
array[array.length - i] = array[index];
array[index] = temp;
}
showArray(array);
}
public void showArray(int[] array) {
for (int i : array) {//遍历数组
System.out.print(" 》" + i);
}
System.out.println();
}
public static void main(String[] args) {
//创建一个数组,这个数组元素是乱序的
int[] array = {63, 4, 24, 1, 3, 15};
System.out.println("数组长度:" + array.length);
System.out.println("=========================");
//创建冒泡排序类对象
SelectSort sorter = new SelectSort();
//调用排序方法将数组排序
sorter.sort(array);
}
}
运行结果:
数组长度:6
=========================
》1 》3 》4 》15 》24 》63
到此这篇关于Java之AlGorithm_analysis案例详解的文章就介绍到这了,更多相关Java之Algorithm_analysis内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
--结束END--
本文标题: Java之Algorithm_analysis案例详解
本文链接: https://www.lsjlt.com/news/135386.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0