您的位置:首页 > 其它

将2数组创建的新数组进行冒泡算法

2015-10-17 10:21 302 查看
public class demo{

public static void main(String args[]){
//定义2个数组
int a[]={1,3,5,7,9,11};
int b[]={2,4,6,8};
//定义一个新数组,长度是a和b的长度之和[.length代表数组的长度]
int[]c=new int[a.length+b.length];

//将数组a的数据按照下标对应放入c数组
//执行for循环,当i=0,i<a的长度是,i++,将数组a的元素赋给了数组c
for(int i=0;i<a.length;i++){
c[i]=a[i];
}
//将数组b的数据放到a的数据的后面,数组c的长度是和a相等的所以是a.length+i
for(int i=0;i<b.length;i++){
c[a.length+i]=b[i];
}
/*冒泡排序,冒泡排序是一种简单的交换类排序。其基本思路是,从头开始扫描待排序的元素,在扫描过程中依次对相邻元素进行比较,将关键字值大的元素后移。每经过一趟排序后,关键字值最大的元素将移到末尾,此时记下该元素的位置,下一趟排序只需要比较到此位置为止,直到所有元素都已有序排列。
一般地,对n个元素进行冒泡排序,总共需要进行n-1趟。第1趟需要比较n-1次,第2趟需要比较n-2次,......第i趟需要比较n-i次。*/

/*因为数组的第一个元素是c[0],所以一个长度是6的数组最后一个元素是c[5]。需要将后一位与前一位数值进行比较,列如a[1]和a[2],所以i<c.length-1 */
for(int i=0;i<c.length-1;i++){
for(int j=i+1;j<c.length;j++){
if(c[i]>c[j]){
int temp=c[i];
c[i]=c[j];
c[j]=temp;
//如果c[i]>c[j],就将c[i]和c[j]位置进行对换
}
}
}
//需要for循环将数组c的元素输出出来
for(int i=0;i<c.length;i++)
System.out.println(c[i]);
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐