选择排序法的实例分析
2015-09-28 16:18
337 查看
由小到大排序
int a[]={63,4,24,1,3,15};
int i,j,k,t;
//由小到大选择排序法
for(i=0;i<a.length-1;i++)
{k=0;
for(j=1;j<a.length-i;j++)
{
if(a[k]<a[j])k=j;
if(k!=a.length-i-1){t=a[k];a[k]=a[a.length-i-1];a[a.length-1-i]=t;}
}
}
System.out.println(Arrays.toString(a));
第一趟:【15 4 24 1 3】63
第二趟:【15 4 3 1 】24 63
第三趟:【1 4 3】15 24 63
第四趟:【1 3】4 15 24 63
第五趟:【1】3 4 15 24 63
由大到小排序
int a[]={63,4,24,1,3,15};
int i,j,k,t;
//由小到大选择排序法
for(i=0;i<a.length-1;i++)
{k=i;
for(j=i+1;j<a.length-i;j++)
{
if(a[k]<a[j])k=j;//有点迭代的方式
if(k!=a.length-i-1){t=a[k];a[k]=a[a.length-i-1];a[a.length-1-i]=t;}
}
}
System.out.println(Arrays.toString(a));
第一趟:63【4 24 1 3 15】
第二趟:63 24【4 1 3 15】
第三趟:63 2415【1 3 4】
第四趟:63 24 15 4【3 1】
第五趟:63 24 15 4 3【1】
读者慢慢领悟。。。。。。。。。。。。。。解疑QQ841937136
int a[]={63,4,24,1,3,15};
int i,j,k,t;
//由小到大选择排序法
for(i=0;i<a.length-1;i++)
{k=0;
for(j=1;j<a.length-i;j++)
{
if(a[k]<a[j])k=j;
if(k!=a.length-i-1){t=a[k];a[k]=a[a.length-i-1];a[a.length-1-i]=t;}
}
}
System.out.println(Arrays.toString(a));
第一趟:【15 4 24 1 3】63
第二趟:【15 4 3 1 】24 63
第三趟:【1 4 3】15 24 63
第四趟:【1 3】4 15 24 63
第五趟:【1】3 4 15 24 63
由大到小排序
int a[]={63,4,24,1,3,15};
int i,j,k,t;
//由小到大选择排序法
for(i=0;i<a.length-1;i++)
{k=i;
for(j=i+1;j<a.length-i;j++)
{
if(a[k]<a[j])k=j;//有点迭代的方式
if(k!=a.length-i-1){t=a[k];a[k]=a[a.length-i-1];a[a.length-1-i]=t;}
}
}
System.out.println(Arrays.toString(a));
第一趟:63【4 24 1 3 15】
第二趟:63 24【4 1 3 15】
第三趟:63 2415【1 3 4】
第四趟:63 24 15 4【3 1】
第五趟:63 24 15 4 3【1】
读者慢慢领悟。。。。。。。。。。。。。。解疑QQ841937136
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- [Android]在代码里运行另一个程序的方法
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序