返回值在Erlang中的列表中出现的次数

返回值在Erlang中的列表中出现的次数,erlang,find-occurrences,Erlang,Find Occurrences,我对Erlang很陌生。这是一个我一直在努力的实践,但我无法编译我的代码。问题是返回值在列表中出现的次数 e、 g: (我不理解“只考虑排行榜的最高级别”)。 这是我的密码: -module(project). -export([count/2]). count(_, []) -> 0; count(X, [X|XS]) -> 1 + count(X, [XS]); count(X, [_|XS]) -> count(X, [XS]). 当我编译它时,它说: 无与项目匹配的

我对Erlang很陌生。这是一个我一直在努力的实践,但我无法编译我的代码。问题是返回值在列表中出现的次数

e、 g:

(我不理解“只考虑排行榜的最高级别”)。 这是我的密码:

-module(project).
-export([count/2]).

count(_, []) -> 0;
count(X, [X|XS]) -> 1 + count(X, [XS]);
count(X, [_|XS]) -> count(X, [XS]).
当我编译它时,它说:

无与项目匹配的函数子句:计数(1[1,2,1,1,2])


列表的尾部已经是一个列表,因此当递归调用函数时,不需要将其包装到新列表中。改为这样写:

-module(project).
-export([count/2]).

count(_, []) -> 0;
count(X, [X|XS]) -> 1 + count(X, XS);
count(X, [_|XS]) -> count(X, XS).
-module(project).
-export([count/2]).

count(_, []) -> 0;
count(X, [X|XS]) -> 1 + count(X, XS);
count(X, [_|XS]) -> count(X, XS).