MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   就是离散数学中可闭包问题 (https://www.labfans.com/bbs/showthread.php?t=5024)

cheryle 2008-10-27 11:29

就是离散数学中可闭包问题
 
编一个程序,求关系的自反闭包,对称闭包和传递闭包
1. 程序的主要语句和变量必须说明;
2. 用matlab的语言;
3. 输入可以为关系的集合,也可以为关系矩阵;
4. 求传递闭包时采用Warshall算法;
5. 交上机作业时,除了打印源程序外,还必须打印两组调试数据及远行结果。
:ft: :ft: :ft:
有谁可以帮我一下吗???我痛苦这个很久了!

mathjiang 2008-10-27 21:43

回复: 就是离散数学中可闭包问题
 
求传递闭包时采用Warshall算法----用平方法求的可以吗?

mathjiang 2008-10-27 21:43

回复: 就是离散数学中可闭包问题
 
function b = qiupf(x)
% 函数名 qiupf = 求矩阵的平方;
% A^2 = A*A 是取大取小算法;
[m, n] = size(x);
if m ~= n
disp('输入的矩阵不是方阵');
return
end
for i = 1:n
for j = 1:n
for k = 1:n
b(k) = min(x(i,k),x(k,j));
end
xsquare(i,j) = max(b);
end
end
b = xsquare;

mathjiang 2008-10-27 21:44

回复: 就是离散数学中可闭包问题
 
function bibao=qiubb(x)
% 函数名 qiubb=求方阵x的闭包;
% 求闭包的方法:平方法(取大取小);
% 调用格式:bibao=qiubb(x);
[m, n]=size(x);
if m ~= n
disp('输入的矩阵不是方阵');
return
end

xsquare=qiupf(x);

while sum(sum(x==xsquare))~=n^2
x=xsquare;
xsquare=qiupf(x);
end
bibao=xsquare;

mathjiang 2008-10-27 21:45

回复: 就是离散数学中可闭包问题
 
其他的自己试试哈


所有时间均为北京时间。现在的时间是 11:07

Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.