艺术学校网站模板,自助定制网站开发公司,商城推广软文范文,网站开发语言学习文章目录 1. 最大值、最小值、总和、平均数2. 数组的复制、反转3. 数组元素的排序3.1. 排序方式3.1.1. 冒泡排序 1. 最大值、最小值、总和、平均数
代码如下#xff1a; public class Test1 {public static void main (String[] args) {int[] arr new int[] {4,2,7,1,3,5};/… 文章目录 1. 最大值、最小值、总和、平均数2. 数组的复制、反转3. 数组元素的排序3.1. 排序方式3.1.1. 冒泡排序 1. 最大值、最小值、总和、平均数
代码如下 public class Test1 {public static void main (String[] args) {int[] arr new int[] {4,2,7,1,3,5};//最大值int max arr[0]; //假设arr[0]是目前的最大值for(int i 0; i arr.length; i) {if(max arr[i]) {max arr[i]; //把目前的最大值赋值给max}}System.out.println(max max);//最小值int min arr[0]; //假设arr[0]是目前的最小值for(int i 0; i arr.length; i) {if(min arr[i]) {min arr[i]; //把目前的最小值赋值给min}}System.out.println(min min);// 总和平均数int res 0;for(int i 0; i arr.length; i) {res arr[i];}System.out.println(总和 res);System.out.println(平均数 (res / arr.length));}
}2. 数组的复制、反转
代码如下
public class Test1 {public static void main (String[] args) {//复制int[] arr new int[] {4,2,7,1,3,5};int[] arr_copy new int[arr.length];for(int i 0; i arr.length; i) {arr_copy[i] arr[i];}// 反转// 考虑声明一个数组temp数组temp的长度与arr的长度一致倒着循环arr正着给temp的元素赋值int[] temp new int[arr.length];int k 0;for(int i arr.length - 1; i 0; i--) {temp[k] arr[i];k;}arr temp;System.out.print(反转后的arr);for(int i 0; i arr.length; i) {System.out.print(arr[i] );}}
}3. 数组元素的排序
3.1. 排序方式
插入排序 直接插入排序、折半插入排序、Shell排序交换排序 冒泡排序、快速排序(或分区交换排序)选择排序 简单选择排序、堆排序归并排序基数排序
3.1.1. 冒泡排序
排序思想 相邻两元素进行比较如有需要则进行交换每完成一次循环就将最大元素排在最后(如从小到大排序)下一次循环是将其它的数进行类似操作。
练习题 对数组{4,7,3,1}从小到大排序使用冒泡排序方式。
答案
public class Test1 {public static void main (String[] args) {//冒泡排序//假设4,7,3,1 从小到大排序//4,3,1,7 第一轮得到一个最大的数字放在倒数第一位//3,1,4,7 第二轮得到除最后一个数字之外的最大数字放在倒数第二位//1,3,4,7 第三轮得到除最后两个数字之外的最大数字放在倒数第三位int[] arr new int[]{4,7,3,1};int temp 0;for(int i 0; i arr.length-1; i) { //外层循环是循环轮次轮次循环的次数是数组长度-1for(int j 0; j arr.length-1-i; j) { //每一轮次的数字对比排序每轮次的循环依次3,2,1(轮次长度-1-i)if(arr[j] arr[j1]) { //如果是号则从大到小排序temp arr[j];arr[j] arr[j1];arr[j1] temp;}}}for(int i 0; i arr.length; i) {System.out.println(arr[i]);}}
}