⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 warshall.c

📁 操作系统源代码
💻 C
字号:
#include "defs.h"transitive_closure(R, n)unsigned *R;int n;{    register int rowsize;    register unsigned i;    register unsigned *rowj;    register unsigned *rp;    register unsigned *rend;    register unsigned *ccol;    register unsigned *relend;    register unsigned *cword;    register unsigned *rowi;    rowsize = WORDSIZE(n);    relend = R + n*rowsize;    cword = R;    i = 0;    rowi = R;    while (rowi < relend)    {	ccol = cword;	rowj = R;	while (rowj < relend)	{	    if (*ccol & (1 << i))	    {		rp = rowi;		rend = rowj + rowsize;		while (rowj < rend)		    *rowj++ |= *rp++;	    }	    else	    {		rowj += rowsize;	    }	    ccol += rowsize;	}	if (++i >= BITS_PER_WORD)	{	    i = 0;	    cword++;	}	rowi += rowsize;    }}reflexive_transitive_closure(R, n)unsigned *R;int n;{    register int rowsize;    register unsigned i;    register unsigned *rp;    register unsigned *relend;    transitive_closure(R, n);    rowsize = WORDSIZE(n);    relend = R + n*rowsize;    i = 0;    rp = R;    while (rp < relend)    {	*rp |= (1 << i);	if (++i >= BITS_PER_WORD)	{	    i = 0;	    rp++;	}	rp += rowsize;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -