#include "intlist.h"
/* acyclic(x) and l[x]==_l and data(x) */
int listMax(intlist x) {
intlist xi = x;
int max = x->data;
while (xi != NULL) {
if (max < xi->data)
max = xi->data;
xi = xi->next;
}
return max;
}
|
var _data:real, _free:real, _len:real,
_new:real, _next:real, _null:real,
x:real, xi:real, y:real,
_l:int, _k:int, S:int, max:int;
begin
assume (x == 0);
xi = _null; y = _null;
xi = x;
max = x * _data;
while xi != _null do
if (max+1 <= xi* _data) then
max = xi * _data;
endif;
y = xi*_next;
xi = _null;
xi = y;
y = _null;
done;
end
|