




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
軟件學(xué)院
上機(jī)實驗報告
課程名稱:數(shù)據(jù)結(jié)構(gòu)__________________________
實驗項目:矩陣
實驗室:耘慧420姓名:
_______________學(xué)號_______________
專業(yè)班級:實驗時間:2022.11.24
實驗成績評閱教師
一、實驗?zāi)康募耙?/p>
1.掌握稀疏矩陣壓縮存儲方法(三元組順序表存儲)。
2.完成壓縮存儲下矩陣計算(矩陣轉(zhuǎn)置)。
二、犧
驗證性
三、實驗學(xué)時
2學(xué)時
四、實驗環(huán)境
C與C++程序設(shè)計學(xué)習(xí)與實驗系統(tǒng)
五'實驗內(nèi)容及步驟
實驗內(nèi)容:
1.實現(xiàn)矩陣壓縮存儲。(靜態(tài)數(shù)組壓縮存儲或者直接輸入矩陣非0元均
可)
2.實現(xiàn)矩陣轉(zhuǎn)置算法。
3.實現(xiàn)矩陣快速轉(zhuǎn)置。
實驗步驟:
1.實現(xiàn)矩陣壓縮存儲。(靜態(tài)數(shù)組壓縮存儲或者直接輸入矩陣非0元均可)
2.實現(xiàn)矩陣轉(zhuǎn)置算法TransposeSMatrix(TSMatrixM,TSMatrix&T)。
3.實現(xiàn)矩陣快速轉(zhuǎn)置FastTransposeSMatrix(TSMatrixM,TSMatrix&T)。
4.主函數(shù)中創(chuàng)建矩陣M,將M調(diào)用轉(zhuǎn)置算法轉(zhuǎn)置成矩陣N,調(diào)用快速轉(zhuǎn)置算法轉(zhuǎn)
~~化成矩陣T。
六、實驗數(shù)據(jù)及結(jié)果分析
七、總結(jié)
了解了矩陣的一些知識,懂得了矩陣的一些算法。并且在實際上機(jī)中,學(xué)會了矩陣
的程序的編寫方法。
附錄源程序清單插入;
#include<stdio.h>
#include"malloc.h"
#include<conio.h>
#include<stdlib.h>
#defineOK1
#defineERROR0
#defineMAXSIZE12500
#defineMAXRC1000
typedefintElemType;
typedefintStatus;
typedefstruct{
inti,j;
ElemTypee;
JTriple;
typedefstruct{
Tripledata[MAXSIZE+1];
intrpos[MAXRC+1];
intmu,tu,nu;
JRLSMatrix;
StatusTransposeSMatrix(RLSMatrixM,RLSMatrix&T){
intq=1,col=0,p=0;
T.mu=M.nu;
T.nu=M.mu;
T.tu=M.tu;
if(T.tu){
q=i;
for(col=1;col<=M.nu;++col)
for(p=1;p<=M.tu;++p)
if(M.data[p].j==col){
T.data[q].i=M.data[p].j;
T.data[q].j=M.data[p].i;
T.data[q].e=M.data[p].e;++q;
})
return0;
StatusFastTransposeSMtrix(RLSMatrixM,RLSMatrix&T){
intcol=0,t=0,p=0,q=0;
ElemTypenum[100],cpot[100];
T.mu=M.nu;
T.nu=M.mu;
T.tu=M.tu;
if(T.tu){
for(col=1;col<=M.nu;++col)num[col]=0;
for(t=1;t<=M.tu;++t)++num[M.data[t].j];
cpot[1>1;
for(col=2;col<=M.nu;++col)cpot[col]=cpot[col-1]+num[col-1];
for(p=1;p<=M.tu;++p){
col=M.data[p].j;q=cpot[col];
T.data[q].i=M.data[p].j;
T.data[q].j=M.data[p].i;
T.data[q].e=M.data[p].e;
++cpot[col];
})
returnOK;
)
StatusCreateSMatrix(RLSMatrix*M){
intk,m,n,i;
ElemTypee;
printf("請輸入行列非零個數(shù))
scanf_s("%d",&(*M).mu);
scanf_s("%d",&(*M).nu);
scanf_s("%d",&(*M).tu);
(*M).data[O].i=O;
for(i=1;i<=(*M).tu;i++){
do{
printf("請輸入元素行列元素值");
scanf_s("%d",&m);
scanf_s("%d",&n);
scanf_s("%d",&e);
k=0;
if(m<1||m>(*M).mu||n<1||n>(*M).nu)
k=1;
if(m<=(*M).data[i-1].i&&n<=(*M).data[i-1].j)
k=1;
}while(k);
(*M).data[i].i=m;
(*M).data[i].j=n;
(*M).data[i].e=e;
)
returnOK;
voidprintfSMatrix(RLSMatrix&M){
inti;
printf_s("%4d%4d%8d\n",M.mu,M.nu,M.tu);
for(i=1;i<=M.tu;i++)
printf_s("%4d%4d%8d\n",M.data[i].i,M.data[i].j,M.data[i].e);
intmain(void)
RLSMatr
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年高考生物一輪復(fù)習(xí)專題4.2細(xì)胞的分化衰老凋亡和癌變講含解析
- 債務(wù)債權(quán)轉(zhuǎn)移合同范例
- 京津魯瓊專用2025版高考地理二輪復(fù)習(xí)選擇題專項練11專項練十一含解析
- 2025版新教材高中化學(xué)課時素養(yǎng)評價十6.2.1化學(xué)反應(yīng)的速率含解析新人教版必修2
- 代理注銷公司合同范例
- 供貨附加合同范例
- 買賣合同范例(融資租賃)
- 中外學(xué)校合作合同范例
- 低壓三相電表施工合同范例
- 個人塔吊出租合同范例
- 中共一大會址
- 制度經(jīng)濟(jì)學(xué):05團(tuán)隊生產(chǎn)理論
- 作文格子紙(1000字)
- 刻度尺讀數(shù)練習(xí)(自制)課件
- 四年級下冊美術(shù)課件 4紙卷魔術(shù)|蘇少版
- 七年級數(shù)學(xué)蘇科版下冊 101 二元一次方程 課件
- ZL50裝載機(jī)工作裝置設(shè)計
- 2021年6月浙江省高考讀后續(xù)寫課件-高考英語復(fù)習(xí)備考
- 小學(xué)古詩詞80首(硬筆書法田字格)
- 時間單位換算表
- 《計算機(jī)網(wǎng)絡(luò)基礎(chǔ)》第1章計算機(jī)網(wǎng)絡(luò)概論
評論
0/150
提交評論