我需要编写一个小的Prolog程序来计算列表中每个元素的出现次数。
numberOfRepetition(input, result)
例如:
numberOfRepetition([a,b,a,d,c,a,b], X)
可以用
X=[a/3,b/2,d/1,c/1]
满意,因为a
出现3次,b
出现2次,c
和d
一次。 最佳答案
我不想给你答案,所以我会帮助你:
% Find the occurrences of given element in list
%
% occurrences([a,b,c,a],a,X).
% -> X = 2.
occurrences([],_,0).
occurrences([X|Y],X,N):- occurrences(Y,X,W),N is W + 1.
occurrences([X|Y],Z,N):- occurrences(Y,Z,N),X\=Z.
根据您的努力和反馈,我可以帮助您获得答案。