java 2_Java(二)
二維數(shù)組是由一維數(shù)組組成的數(shù)組
選擇排序原理
將數(shù)組中每一個(gè)元素與第一個(gè)元素相比較,如果這個(gè)元素小于第一個(gè)元素,則交換這兩個(gè)元素
循環(huán)第一條規(guī)則,找出最小元素,放于第一個(gè)位置
經(jīng)過(guò)n-1輪比較完成排序
冒泡排序原理
逐一比較數(shù)組中相鄰的兩個(gè)元素,如果后面的元素小于前面的元素就交換相互順序
經(jīng)過(guò)一輪比較,一定有一個(gè)最大的排在最后的位置
每次比較剩下的元素,經(jīng)過(guò)n-1輪比較完成排序
插入排序原理
將數(shù)組分為兩部分,將后部分的第一張逐一與前部分每一張比較,如果當(dāng)前元素小,就移動(dòng)被比較元素。找到合理位置插入
1.概念:二維數(shù)組是由一維數(shù)組組成的數(shù)組
2.語(yǔ)法:a.int [] [] arr=new int [2][];
定義了二維數(shù)組的長(zhǎng)度,但是一維數(shù)組長(zhǎng)度沒(méi)有定義,一維數(shù)組沒(méi)有申請(qǐng)內(nèi)存空間null
b.int [] [] arr=new int [2][3];
定義了一維數(shù)組和二維數(shù)組的長(zhǎng)度,一維數(shù)組分配了內(nèi)存空間,一維數(shù)組的長(zhǎng)度為3,一維數(shù)組的默認(rèn)值為0;
c.二維數(shù)組也支持靜態(tài)初始化
String [] []arr={{0,1,5,},{6,5,2}}
數(shù)組經(jīng)典排序
1.選擇排序原理
a.將數(shù)組中每個(gè)元素與第一個(gè)元素比較,如果這個(gè)元素小于第一個(gè)元素,則交換這倆個(gè)元素的位置
b.循環(huán)第一條規(guī)則,找出最小元素,防于第一個(gè)位置
c.經(jīng)過(guò)N-1輪比較完成排序
package paixu;
/**
* 選擇排序
*/
import java.util.Scanner;
public class zy2 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("請(qǐng)輸入輸入數(shù)字的位數(shù):");
int c = input.nextInt();
int[] a = new int[c];
for (int i = 0; i < a.length; i++) {
System.out.print("請(qǐng)輸入輸?shù)?#34; + (i + 1) + "位數(shù)字:");
a[i] = input.nextInt();
}
int temp = 0;
for (int i = 0; i < a.length; i++) {
for (int j = i + 1; j < a.length; j++) {
if (a[i] > a[j]) {
temp = a[i];
a[i] = a[j];
a[j] = temp;
}
}
}
for (int i = 0; i < a.length; i++)
System.out.print(a[i] + " ");
}
}
2.冒泡排序原理
a.逐一比較數(shù)組中相鄰的兩個(gè)元素,如果后面的元素小于前面的元素就互換
b.經(jīng)過(guò)一輪比較,一定有一個(gè)最大的排在最后的位置
c.每一次比較剩下的元素,經(jīng)過(guò)N-1次比較可以實(shí)現(xiàn)排序
1 package paixu;
2
3 /**
4 * 冒泡排序
5 */
6
7 public class zy1 {
8 public static void main(String[] args) {
9 int[] sz = { 8, 6, 5, 4, 3, 1, 2 };
10 int bl = 0;
11 for (int i = 0; i < sz.length - 1; i++) {
12 for (int j = 0; j < sz.length - 1 - i; j++) {
13 if (sz[j] > sz[j + 1]) {
14 bl = sz[j];
15 sz[j] = sz[j + 1];
16 sz[j + 1] = bl;
17 }
18 }
19 }
20 for (int i = 0; i < sz.length; i++) {
21 System.out.print(sz[i] + "\t");
22 }
23 }
24
25 }
3.插入排序原理
a.將數(shù)組分為兩部分,將后部分的第一張逐一與前部分每一張比較,如果當(dāng)前元素小,就移動(dòng)被比較的元素
b.找到合理位置插入
1 package paixu;
2
3 /**
4 * 插入排序
5 */
6 public class zy3 {
7 public static void main(String[] args) {
8 int[] sz = { 1, 9, 5, 2, 7, 4 };
9 for (int i = 1; i < sz.length; i++) {
10 int temp = sz[i];
11 int j;
12 for (j = i - 1; j >= 0; j--) {
13 if (temp < sz[j]) {
14 sz[j + 1] = sz[j];// 元素向后移動(dòng)
15 } else {
16 break;
17 }
18 }
19 sz[j + 1] = temp;// 找到合適的位值插入元素
20 }
21 for (int i = 0; i < sz.length; i++) {
22 System.out.print(sz[i] + " ");
23 }
24 }
25 }
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的java 2_Java(二)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 如何有效提升路由器上网速度路由器电脑配置
- 下一篇: 中兴F612路由器怎样设置中兴路由器如何