利用Warshall算法求二元關系的可傳遞閉包_第1頁
利用Warshall算法求二元關系的可傳遞閉包_第2頁
利用Warshall算法求二元關系的可傳遞閉包_第3頁
利用Warshall算法求二元關系的可傳遞閉包_第4頁
利用Warshall算法求二元關系的可傳遞閉包_第5頁
已閱讀5頁,還剩2頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、離散數學實驗訓練學 院 計算機與信息技術學院 指導老師 景麗萍 學生姓名 謝昂 學 號 13281164 提交日期 2014年5月22日 利用Warshall算法求二元關系的可傳遞閉包學生:謝昂 指導老師:景麗萍一、設計方案簡介 設計一個程序實現求解關系R的傳遞閉包二、Warshall算法Warshall在1962年提出了一個求關系的傳遞閉包的有效算法。其具體過程如下,設在n個元素的有限集上關系R的關系矩陣為M:   (1)置新矩陣A=M;   (2)置k=1;   (3)對所有i如果Ai,k=

2、1,則對j=1.n執(zhí)行:                      Ai,jAi,jAk,j;   (4)k增1;   (5)如果kn,則轉到步驟(3),否則停止。所得的矩陣A即為關系R的傳遞閉包t(R)的關系矩陣。三、需求分析用戶要自己計算出二元關系的矩陣形式,輸入時要按矩陣輸入,從第一排第一個開始輸入,直到第一排全部輸入(每

3、兩個數字之間要輸入一個空格),然后按回車轉換到下一行,以同樣的形式輸入該行數字,全部輸入完成后按回車。然后會輸出一個矩陣就是所求的關系R的傳遞閉包矩陣。程序可以求任意關系R的傳遞閉包,但必須按要求輸入正確的關系矩陣形式。四、概要設計 在集合X上的二元關系R的傳遞閉包是包含R的X上的最小的傳遞關系。R的傳遞閉包在數字圖像處理的圖像和視覺基礎、圖的連通性描述等方面都是基本概念。一般用B表示定義在具有n個元素的集合X上關系R的n×n二值矩陣,則傳遞閉包的矩陣B*可如下計算:      B* = B&#

4、160;+ B2 + B3 + + (B)n     式中矩陣運算時所有乘法都用邏輯與代替,所有加法都用邏輯或代替。上式中的操作次序為B,B(B),B(BB),B(BBB),所以在運算的每一步我們只需簡單地把現有結果乘以B,完成矩陣的n次乘法即可。五、主要實驗流程圖程序開始輸入矩陣的維數輸入矩陣各元素的值輸入是否正確?計算出可傳遞閉包關系矩陣打印可傳遞閉包的關系矩陣結束正確不正確六、實驗源代碼#include "stdio.h"void Warshall(int n

5、)int i , j, k;int temp100100;int is_correct=0;flag:while(is_correct=0)fflush(stdin);for(int a=0;a<n;a+)printf("請輸入矩陣第%d行元素:",a+1);for(int b=0;b<n;b+)scanf("%d",&tempab);if(tempab=0|tempab=1) /判斷輸入是否合法is_correct=1;elseis_correct=0;printf("矩陣輸入錯誤!請重新輸入n");goto f

6、lag;for(i=0;i<n;i+)for(j=0;j<n;j+)if(tempji=1)for(k=0;k<n;k+)tempjk=tempik|tempjk;printf("傳遞閉包關系矩陣t(R):n");for(i=0;i<n;i+) for(j=0;j<n;j+)printf("%dt", tempij);printf("n");int main(int argc, char* argv)int n;printf("請輸入關系矩陣的維數: ");scanf("%d",&n);Warshall(n);retur

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論