java学习之路--------第四天

今天的课程也是少的可怜,主要还是数组,数组的复制,数组的排序(三大排序)

数组的复制:

         方法:System.arraycopy(src.srcIndex,desc,descIndex,lenth)

                       src:要复制的数组

                       srcIndex:从哪个位置开始复制

                       desc:目标数组

                       descIndex:从哪个位置插入

                       length:复制的原数组的长度

备注:复制不可以超过目标数组的长度

例子:

         int [] src = {1,2,3,4,5};

         int [] desc = {6,7,8,9,10};

         System.out.println(Arrays.toString(desc));

         System.arraycopy(src,2,desc,3,3);//报错,数组下标超出异常

         System.out.println(Arrays.toString(desc));

 

三大排序:

1.选择排序:

   原理:第一个和第二个、第三个等所有元素进行比较,确定第一次循环的最小值,然后将最小值放入第一个位置去,然后从第二个开始比,将较小值再找到后放入第二个位置,以此类推一直到最后,最后一个数就不需要比了;所以比较次数为长度-1次。

2.冒泡排序:

  原理:相邻的两个元素进行比较,将较大值放在后一个数,这样第一圈比较完,最后一个数就是最大的数,这样每次循环都会讲最大的数放在后面,比较的次数-1,因为每次外循环结束后,最大的数已经放在了后面,就不需要再进行比较了。

3.插入排序

   原理:选择数组中的第二个数也就是下标为1的数,和它前一个数比,如果小于它前一个数,则换位置,如果大于前一个数,则继续拿第三个数和它前二个数比,同上,比到最后一个数。

猜你喜欢

转载自blog.csdn.net/mataodehtml/article/details/83409408