JAVA学习笔记-二分法排序(增强for循环)
Posted iamAnonymous
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JAVA学习笔记-二分法排序(增强for循环)相关的知识,希望对你有一定的参考价值。
package MyErFenPaiXu;
public class Mycode {
public static void main(String[] args){
int[] a ={18,63,25,46,3,0,99,1,2};
for(int j=0;j<a.length-1;j++){ //这里的意思为不断的比较,次数只要不小于5次就能遍历出想要的结果。
for(int i=0;i<a.length-1-j;i++){ //遍历一次,一个大数会被移到最后的位置。
if(a[i]>a[i+1]){
int temp=0; //这里是不断拿一个数和它的第二数进行比较,第一个数>第二个,就把大数后移一个位置,中途借助temp来实现数据暂存的转移。
temp = a[i+1];
a[i+1]=a[i];
a[i]=temp;
}
}
}
for(int k=0;k<a.length;k++){
System.out.print(a[k]+"\\t");
}
}
}
以上为自己写的排序小程序,但是jdk给我们提供了java.util工具类,包括排序数组,打印数组等等的方法。
数组复制:
public static void arraycopy(Object src, //被复制的数组 int srcPos, //被复制的数组位置索引 Object dest, //复制到哪个数组 int destPos, //复制到该数组的哪个索引 int length) //复制的数组长度
数组填充:
Arrays.fill(a,2,4,100); //将2到4索引的元素替换为100 替换都是包头不包尾 [2,4)
排序数组:
int[] a ={18,63,25,46,3,0,99,1,2};
Arrays.sort(a); //从小到大的顺序进行排序。
打印数组:
Arrays.toString(a); //个人感觉Arrays的toString和Object的toString应该是重载的关系???
遍历数组的小方法!
以上是关于JAVA学习笔记-二分法排序(增强for循环)的主要内容,如果未能解决你的问题,请参考以下文章
java方法的可变参数数组复制排序分类冒泡和选择排序搜索等常用方法实现