eclazz.pas
来自「Delphi Pascal 数据挖掘领域算法包 数值算法大全」· PAS 代码 · 共 22 行
PAS
22 行
PROCEDURE eclazz(VAR nf: glnarray; n: integer);
(* Programs using routine ECLAZZ must supply a boolean function
equiv(i,j:integer):boolean which indicates (TRUE or FALSE) whether
i and j belong to the same equivalence class. They must also
define the type
TYPE
glnarray = ARRAY [1..n] OF integer;
in the main routine. *)
VAR
kk,jj: integer;
BEGIN
nf[1] := 1;
FOR jj := 2 TO n DO BEGIN
nf[jj] := jj;
FOR kk := 1 TO jj-1 DO BEGIN
nf[kk] := nf[nf[kk]];
IF (equiv(jj,kk)) THEN nf[nf[nf[kk]]] := jj
END
END;
FOR jj := 1 TO n DO nf[jj] := nf[nf[jj]]
END;
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?