选择排序的学习
来源:互联网 发布:apk 反编译 源码 编辑:程序博客网 时间:2024/06/05 04:30
使用选择排序实现数组int []= arr{34,19,11,109,3,56}实现数组从小到大排序。
首先,要确定每一个数组角标下的数,也就是通过每个角标与它之后的角标进行一一进行比较,如果后面的 角标比要确定位置的角标小,就交换位置。
所以,我们可以通过for循环来确定要确定角标的个数,for(int x=0;x<arr.length;x++){
},其实确定到倒数第二个数的时候就已经排序好了,因为最后一个数不可能跟最后一个数进行比较。所以外循环就可以for(int x=0;x<arr.length-1;x++){
}
,而对于这要确定的这几个角标,它们角标的确定,必须要与它之后的角标所对应的数一一进行比较然后换位置,所以这个时候也需要再嵌套一个for循环来遍历所需确定角标之后的数,
for(int x=0;x<arr,length-1;x++){
for(int y=x+1;y<arr,length;y++){
}
},接下来就是通过一个if语句实现在里边进行比较换位置。
}
for(int x=0;x<arr,length-1;x++){
for(int y=x+1;y<arr,length;y++){
if(arr[x]>arr[y]){
int temp=arr[x];
arr[y]=arr[x];
arr[y]=temp;
}
}
最后在来个完整一点的写法:
class selectArr{
public static void main(String[] args)
{
int [] arr=arr{34,19,11,109,3,56};
selectSort(int[] arr);
for(int x=0;x<arr.length;x++)
{
System.out.print( arr[x] )
}
public static void selectSort(int [] arr){
for(int x=0;x<arr,length-1;x++){
for(int y=x+1;y<arr,length;y++){
if(arr[x]>arr[y]){
int temp=arr[x];
arr[y]=arr[x];
arr[y]=temp;
}
}
}
}
- 选择排序的学习
- java的选择排序学习
- 选择排序和冒泡排序的学习
- 选择排序 学习
- 选择排序学习
- 选择排序学习
- 数据结构学习--选择排序
- 选择排序---学习笔记
- 学习笔记:冒泡排序、插入排序、选择排序、快速排序的实现
- OC学习之道:数据结构中几种常见的排序算法:选择排序,插入排序.快速排序
- 单链表的排序(选择排序)
- 简单的排序---选择排序
- C#学习笔记—数组的选择排序
- 算法学习 - 选择排序的稳定性讨论(C++实现)
- 算法学习——不交换的选择排序
- C语言学习-选择排序
- 数据结构学习之选择排序
- 算法学习之选择排序
- What is the difference between a URI, a URL and a URN
- MSP-EXP4320P401R使用---Keil的使用与Debug【1】
- Android实现画板功能的多种实现方式
- S5PV210中的定时器
- 【步兵 c++】试用default_random_engine
- 选择排序的学习
- [Clean Code] Chapter 7: 异常处理
- Artificial Neural Networks: Linear Multiclass Classification (Part 3)
- KMP匹配算法实现详解
- 数据挖掘系列笔记(2):机器学习的应用实例
- import和@class的区别
- c混合运算和数据类型转换
- spring RestTemplate用法详解
- [实时渲染] 2.1 架构