java中冒泡排序与选择排序的简单实现方法

本文详细介绍了两种基本的排序算法:冒泡排序和选择排序。通过具体实例,展示了这两种算法的实现过程和工作原理,帮助读者理解排序算法的基本概念。

冒泡排序

它重复地走访过要排序的元素列,依次比较两个相邻的元素,如果顺序(如从大到小、首字母从从Z到A)错误就把他们交换过来。走访元素的工作是重复地进行直到没有相邻元素需要交换,也就是说该元素列已经排序完成。

创建数组
首先定义一个数组int[] array={9,8,7,6,5};
我们接下来要实现升序.
for(int i=0;i<array.length-1;i++){
for(int k=0;k<array.length-(i+1);k++){
if(array[k]>array[k+1]){
int temp=array[k];
array[k]=array[k+1];
array[k+1]=temp;
}
}
}
最后我们输出函数,得到结果56789

原理:

当i=0时:
98765
89765
87965
87695
87659

当i=1时 这时最后一位的9已经交换完成,我们只需交换前4位
87659
78659
76859
76589

当i=2时
76589
67589
65789

当i=3时
65789
56789

通过上述交换过程我们可以得到结果

选择排序

第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,然后放到已排序的序列的末尾。以此类推,直到全部待排序的数据元素的个数为零。选择排序是不稳定的排序方法。

创建数组
首先我们创建一个int[] array={9,8,7,6,5};
接下来我们要实现升序
for(int i=0;i<array.length-1;i++){
for(int k=i+1;k<array.length;k++){
if(array[i]>array[k]){
int temp=array[k];
array[k]=array[i];
array[i]=temp;
}
}
}
最后我们得到结果56789

原理

当i=0时
98765
89765
79865
69875
59876

当i=1时 这时第一位已经交换完成,我们只需交换后4位
59876
58976
57986
56987

当i=2时
56987
56897
56798

当i=3时
56798
56789

通过上述交换我们可以得到结果

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值