二元关系的闭包运算法编程
不知道这个用java怎么编有人会不
发个上来看看
看看谁的最牛逼 --------------------编程问答-------------------- matrix operator*(matrix tem) //重载 *号
{
matrix ans;
ans.size = size;
ans.clear();
for(int i = 0; i <= size; ++i)
for(int j = 0; j <= size; ++j)
if (m[i][j])
{
for(int k = 0; k <= size ; ++k)
ans.m[i][k] += m[i][j]*tem.m[j][k];
}
return ans;
}
//ans 初始化为单位矩阵 tem 为 原矩阵 m为幂指数
while(m)
{
if (m&1) ans = ans*tem;
tem = tem*tem;
m >>= 1;
}
2
}
// 求 传递闭包
for(j = 0; j < 10; j++ )
{
for(i = 0 ;i < 10; i++ )
if (map[i][j])
{
for(k = 0; k < 10; k++)
map[i][k] |= map[j][k];
}
}
补充:Java , Eclipse