[정렬 알고리즘 with haskell 1탄] Insertion, Selection, Merge, Quick Sort
하스켈로 알고리즘을 구현하는 것이 좀더 큰 목적이지만, 그렇다고 알고리즘 구현에 뛰어난 것이 아니기 때문에 복습도 해볼겸해서 정렬알고리즘을 하스켈로 구현하고 각각의 특징을 정리 해보려고 합니다. 그 1탄으로 Insertion sort, Selection sort, Merge sort, Quick sort입니다. 오늘은 어려운 코드가 아니므로 알고리즘 구현에 대한 자세한 설명은 생략하는 것이 좋을 것 같습니다. 일단 코드 부터 보겠습니다. 기존에 C와 다른 코드 이므로 좀더 신중하게 보세요.. 하스켈을 모르셔도 읽는데는 무리가 없을 것이라고 생각합니다. (필요한부분은 설명을 하도록 하겠습니다.) -- this function is inserttion sort insert :: Ord a => a -> [a..
2010.02.27
알고리즘을 표현하는데는 정말 함수형 언어가 좋은 것 같습니다.
알고리즘을 조금씩 공부해 보자는 취지를 같고 공부해 보려 하지 무엇 부터 해야 할지 막막하네요.. 그러던중, 갑자기 알고리즘 책에 있는 문제들을 함수형 언어(Functional language)로 바꾸어 보면 어떨까 하는 생각이 들었습니다. 처음에는 정렬 알고리즘(sorting algorithm)중 빠른 정렬(Quick sort)을 구현하는데 함수형 언어가 너무나 아름다운 코드를 만들어 내어서 다른 정렬 알고리즘을 함수형 언어로 구현해 보는 건 어떨까 생각했는데 일이 커졌나 모르겠습니다. 뭐 아무튼, 일단 정렬에 대해서는 그렇게 할 것입니다...ㅋ 본론으로 들어가서 역시나 함수형언어는 알고리즘을 표현한는데 정말 좋은 것 같습니다. 다른 분들도 마찬가지 겠지만, 대부분의 한국 컴퓨터 공학과 학생들, 전산 ..
2010.02.27