Day1資料結構 稀疏矩陣

2021-10-10 14:30:55 字數 1315 閱讀 1845

資料結構基礎

稀疏矩陣實現

package third;

public

class

sparsearray

system.out.

println()

;}//將二維陣列 轉 稀疏陣列

//1.遍歷二維陣列 得到非0資料的個數

int sum =0;

for(

int i=

0;i<

11;i++

)for

(int j=

0;j<

11;j++)}

//2.建立對應的稀疏矩陣

int sparsearray[

]=newint

[sum+1]

[3];

//給稀疏陣列賦值

sparsearray[0]

[0]=

11;sparsearray[0]

[1]=

11;sparsearray[0]

[2]=sum;

//遍歷二維陣列 將非0的值儲存到sparsearray中

int count =0;

// count用於記錄第幾個非0 資料

for(

int i=

0;i<

11;i++

)for

(int j=

0;j<

11;j++)}

//輸出稀疏陣列形式

system.out.

println()

; system.out.

println

("得到稀疏陣列");

for(

int i=

0;i將稀疏陣列恢復成原始的二維陣列

*///1.將讀取第一行,根據第一行的資料建立原始二維陣列

int chessarr2[

]=newint

[sparsearray[0]

[0]]

[sparsearray[0]

[1]]

;//2.讀取稀疏矩陣的後幾行資料,賦給原始二維陣列

for(

int i=

1;i< sparsearray.length;i++

) system.out.

println()

;for

(int

row:chessarr2)

system.out.

println()

;}}}

資料結構 day1

資料結構往往跟演算法有很大關係 ep1 圖書館 ep2 遞迴函式很有可能導致記憶體溢位 因為每一次遞迴都在記憶體裡新建了乙個 程式 如果遞迴次數過多,那麼這個程式占用的空間會很恐怖 ep3 多項式 正常演算法和秦九韶演算法的比較。秦九韶演算法有效的減少了乘法的量級 clock 獲得從程式開始到呼叫這...

資料結構day1 棧

1.什麼是棧 後進先出 lifo 的線性表,僅能在一邊進出。2.實現方式有 順序棧和鏈式棧 順序棧的實現 將陣列的尾部當作棧頂,在棧頂尾部進行pop和push操作只需要常數時間。順序棧的實現 public class astack implements stackadt astack void in...

資料結構 稀疏矩陣

稀疏矩陣 矩陣中有效資料的個數遠遠小於無效資料的個數,則可以稱之為稀疏矩陣 如果還像以前那樣將每個稀疏矩陣的資料都儲存起來,則會造成記憶體的很大程度的浪費,所以應用特別的儲存方式。稀疏矩陣的壓縮儲存 使用 三元組儲存每乙個有效資料,三元組按原矩陣中的位置,以行優先順序先後順序依次存放。矩陣的轉置 將...