프로그래밍/Scala

주어진 술어(predicate)와 부함하는 List의 앞 요소들을 제거하는 함수 dropWhile 을 구현하라

모지사바하 2015. 8. 10. 17:59
def dropWhile[A](as: List[A], f: A => Boolean): List[A] = as match {
case Cons(x, xs) => {
if (f(x)) dropWhile(xs, f)
else xs
}
}

회고.

List 전체 요소를 재귀로 순회하면서 인자로 주어진 함수를 호출하여 참이면 List의 다음요소로 교체