0
假設我有一個列表[1,2,1,3,2,0,8,3,1]
,我想找到最後3個的索引7
,在prolog中如何做到這一點?序言:找到一個列表中的元素的最後一個索引
假設我有一個列表[1,2,1,3,2,0,8,3,1]
,我想找到最後3個的索引7
,在prolog中如何做到這一點?序言:找到一個列表中的元素的最後一個索引
喜歡的東西
last(List, Needle, Ret) :- last1(List, Needle, 0, -1, Ret).
last1([H | T], N, Idx, Acc, Ret) :- Idx2 is Idx + 1, (H == N, !, last1(T, N, Idx2, Idx, Ret); last1(T, N, Idx2, Acc, Ret)).
last1([], _, _, Acc, Acc).
這遍歷整個列表,保持看到最後一針的索引。這是功課嗎?
謝謝,我想我現在明白了。是的,這是作業 – SamChen