又一段很有启发的haskell filter代码
--从列表 xs中过滤出满足谓词p的元素,注意foldr的使用
myFilter p xs = foldr step [] xs where step x ys p x = x:ys otherwise = ys
使用:
--过滤出1到10的list中大于5的元素
myFilter (>5) [1..10]
--从列表 xs中过滤出满足谓词p的元素,注意foldr的使用
myFilter p xs = foldr step [] xs where step x ys p x = x:ys otherwise = ys
使用:
--过滤出1到10的list中大于5的元素
myFilter (>5) [1..10]