如何编写一个算法来确定从有限集A到有限集B的函数f是否是函数。
这是我到目前为止所做的:
A: array ( members of set A )
B: array ( members of set B )
Mapped: associative array of Boolean variables.
for each b in B:
Mapped[b] = false
for each a in A:
Mapped[f(a)] = true
Onto = true;
for each b in B:
Onto = Onto AND Mapped[b]
return Onto
这是对的吗?
答案 0 :(得分:0)
for each a in A:
remove f(a) from B
return (is B empty?)
然后你当然应该先排序B
,这样你就可以更快地删除。