陣列中的常見演算法

2021-09-25 07:43:37 字數 2008 閱讀 6721

1.陣列的賦值

以楊輝三角為例:

package com.ashley.day_0607;

public

class

yanghuitest}}

for(

int i =

0; i < yanghui.length; i++

) system.out.

println()

;}}}

2.陣列的賦值和複製的區別

int

arr1, arr2;

//宣告陣列arr1,arr2

arr1 =

newint

;//初始化arr1

for(

int i =

0; i < arr1.length; i++

)system.out.

println()

;arr2 = arr1;

//將arr1賦值給arr2

int

arr1, arr2;

arr1 =

newint

;for

(int i =

0; i < arr1.length; i++

)system.out.

println()

;arr2=

newint

[arr1.length]

;for

(int i =

0; i < arr2.length; i++

)

3.陣列元素的反轉

方法一:

string[

] arr =

newstring

;//反轉後得到:ee,dd,cc,bb,aa

for(

int i =

0; i < arr.length /

2; i++

)

方法二:

string[

] arr =

newstring

;for

(int i =

0,j = arr.length -

1;i < j;i++

,j--

)

4.陣列元素的查詢
string arr1=

newstring

;string dest1 =

"兒童節"

;//確定查詢的目標元素

for(

int i =

0; i < arr1.length; i++)}

if(isflag)

int arr=

newint

;int dest =34;

//確定目標值

int head =0;

//初始的首索引

int end = arr.length -1;

//初始的尾索引

boolean isflag =

true

;while

(head <= end)

else

if(dest < arr[mid]

)else}if

(isflag)

5.陣列元素的排序

衡量排序演算法的優劣標準:時間複雜度、空間複雜度、演算法的穩定性。

重點掌握:

int arr=

newint

;for

(int i =

0; i < arr.length -

1; i++)}

}

快速排序:由氣泡排序改進而得到的。它是在待排序的n個記錄中,通常取第乙個記錄作為「基準」。通過一趟排序後,將所有小於基準的記錄放到其左邊,大於的放在其右邊。然後重複上述過程(遞迴)將左右兩邊的記錄進行排序,直至各剩乙個記錄。

陣列中的常見異常

1.陣列角標越界的異常 arrayindexoutofbound ception 2.空指標異常 nullpointerexception 注意 一旦程式出現異常,未處理,程式將中止執行。package day07 陣列中的常見異常 1.陣列角標越界的異常 arrayindexoutofbound ...

陣列排序常見的幾種演算法

氣泡排序的基本思想就是對比相鄰的元素值,如果滿足條件就交換元素值,把小的放前面,把大的放後面。其演算法由兩層迴圈實現,外層迴圈控制排序次數,一般為排序的陣列的長度減1,內層迴圈主要用於比較相鄰元素的大小,以判斷是否交換位置。內層的對比次數隨著外層排序的次數的增加而減少。如下 public class...

常見陣列演算法小解

以下陣列皆採用 int arr 氣泡排序 相鄰兩個元素進行比較,每次選出乙個最大值放在最後面 for int i 0 i arr.length 1 i 2.選擇排序 每次選出乙個最小值放在最前面,假設第乙個是最小值依次與後面的數進行比較,如果碰到比假設最小值還小的數則進行交換,以此類推 for in...