第九周 對稱矩陣壓縮儲存的實現

2021-07-06 04:27:03 字數 1070 閱讀 7066

/*

*all right reserved.

*date:2023年10月26日

*版本:v1.0.1

*作業系統:xp

*執行環境:vc6.0

*問題描述: 對稱矩陣壓縮儲存的實現

*/

用壓縮形式儲存對稱矩陣,實現下面的操作並測試

void init(int *&b);//為n階對稱矩陣初始化儲存資料的一維陣列b

int value(int b, int i, int j);//返回儲存在b[m]中,對應二維陣列a[i][j]的值

void assign(int b, int e, int i, int j);//將e賦值給對應二維陣列元素a[i][j],要儲存到b[m]中

void disp(int b);//輸出壓縮儲存在b中的對稱矩陣

void destroy(int b); //銷毀儲存空間

**如下:

#include #include #define n 4

//為n階對稱矩陣初始化儲存資料的一維陣列b

void init(int *&b)

//返回儲存在b[m]中,對應二維陣列a[i][j]的值

int value(int b, int i, int j)

//將e賦值給對應二維陣列元素a[i][j],要儲存到b[m]中

void assign(int b, int e, int i, int j)

//輸出壓縮儲存在b中的對稱矩陣

void disp(int b)

{ int i,j;

for (i=0; i執行結果:

知識總結:

由於對稱矩陣中的元素關於主對角線對稱,在儲存時可以只儲存對稱矩陣中的上三角或者下三角中的元素,使得對稱的元素共享乙個空間。就可以將n²個元素儲存到n*(n-1)/2個元素的空間中!

第九周 對稱矩陣壓縮儲存的實現與應用

問題描述 對稱矩陣壓縮儲存的實現與應用。輸入 第n行的第n個數值。輸出 對陣矩陣。原始檔 include head.h void init int b int value int b,int i,int j void assign int b,int e,int i,int j void disp ...

第九周 對稱矩陣壓縮儲存的實現和應用

問題描述 設計演算法,實現兩個用壓縮形式 matrix.h include include define n 4 定義矩陣階數為4 void init int b 為n階對稱矩陣初始化儲存資料的一維陣列b int value int b,int i,int j 返回儲存在b m 中,對應二維陣列a ...

第九周專案2 對稱矩陣壓縮儲存的實現與應用(1)

all right reserved.檔名稱 test.cpp 完成日期 2015年10月30日 版本號 v1.0 問題描述 用壓縮形式儲存對稱矩陣,實現下面的操作並測試 void init int b 為n階對稱矩陣初始化儲存資料的一維陣列b int value int b,int i,int j...