주요 개념 - 함수형 개념을 사용하여 List를 구현 - 순수 함수 (Pure function) - 꼬리 재귀 (Tail recursion) - 고차 함수 (High order function) - 패턴 매칭 & 코틀린 매칭 - 이진트리를 직접 구현 아래의 코드는 단일 연결리스트의 구조 정의로, 비어있는 리스트와 값이 들어가 있는 리스트를 생성할 수 있는 형태이다. 값을 넣는 head와 리스트를 연결할 수 있는 tail 형태로 이루어져있다. 다형적으로 사용하기 위해서 A로 타입을 추상화 했다. sealed class List object Nil: List() data class Cons(val head: A, val tail: List): List() 아래는 companion object를 통해서 Jav..