欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java day06

程序员文章站 2022-03-14 10:16:00
...

冒泡排序

Java day06

概念:相邻两个元素进行比较,互换位置。
代码:
int[] a = {3,6,4,2,11,10,5};
for(int j = 0; j<a.length - 1; j++){//j = 0 ,1 ,2 ,3
	for(int i = 0; i<a.length-1-j; i++){//? = 0 1 2 3
		if(a[i] > a[i+1]){//? 0 1
			int temp = a[i];
			a[i] = a[i+1];
			a[i+1] = temp;
		}
	}
}

选择排序

Java day06

概念:固定值和其他值依次比较,交换位置。
代码:
int[] a = {4,6,32,5,12,2,15,28,9,10};
for(int j = 0; j<a.length-1; j++){		// j = 0 1 2 3  次数
	for(int i = j; i<a.length-1; i++){  // j = 0 1 2 3	作比较
		if(a[j] > a[i+1]){				//? = 
			int temp = a[j];
			a[j] = a[i+1];
			a[i+1] = temp;
		}
	}
}

快速排序

语法:java.util.Arrays.sort(数组名);()
代码:
	int[] a = {3,4,5,2,1};
	java.util.Arrays.sort(a);//注:只能完成升序

可变长参数

概念:可以接收多个同类型的实参,个数不限,使用方式和数组一致。
语法:数据类型... 形参名
注意:可变长参数必须在最后一个形参
举例:
	public static void add4(int a, int... b){}//可变长参数是最后一个形参 √
	public static void add4(int... b, int a){}//可变长参数不是最后一个形参 ×
public static void main(String[] args){
		int a = 10;
		int b = 20;
		add(a,b);
		
		add2(10,20,30);
		
		//add3();
		add3(10);
		add3(10,20);
		
		
		//add4(10,20,30);
	}
	
	//写一个函数完成两个整数(int)求和
	public static void add(int c, int d){
		System.out.println(c + d);
	}
	
	//写一个函数完成三个整数(int)求和
	public static void add2(int c, int d,int e){
		System.out.println(c + d + e);
	}
	
	//写一个函数完成整数(int)求和
	public static void add3(int... array){//array:可变长等同于数组
		//System.out.println("我是可变长");
		int sum;
		for(int i = 0; i<array.length; i++){
			sum += array[i];
		}
		System.out.println(sum);
	}

二维数组

概念:一维数组中的每一个元素还是一个一维数组。(了解)
二维数组的创建:
	方式1:先声明,再分配空间
	语法:数据类型[][] 数组名;
	     数组名 = new 数据类型[][];
	举例:int[][] a;
		a = new int[3][2];

	方式2:声明并分配空间(掌握)
	语法:数据类型[][] 数组名 = new 数据类型[][];
	举例:int[][] b = new int[3][4];

	方式3:声明并赋值(麻烦)(了解)
	语法:数据类型[][] 数组名 = new 数据类型[][];
		 数组名[] = new 数据类型[];
	举例:int[][] c = new int[2][];
		c[0] = new int[5];
		c[1] = new int[3];
	
	方式4:声明并赋值(简单)(掌握)
	语法:数据类型[][] 数组名 = {   {1...},  {1...},   {1...}  };
	举例:int[][] d = { {1,2,3},{1,1,1,1,1,1},{2,4} };