Search Results for '프로그래밍'

3 POSTS

  1. 2008/02/27 [Haskell] 합병 정렬
  2. 2008/02/22 서로소 집합 (Disjoint set)
  3. 2008/02/20 루비로 구현한 Minimum Cut

[Haskell] 합병 정렬

Posted 2008/02/27 22:55

merge2 a [] = a
merge2 [] b = b
merge2 (x:xs) (y:ys)
  | x < y = x:merge2 xs (y:ys)
  | x > y = y:merge2 (x:xs) ys
  | otherwise = x:y:merge2 xs ys

mergesort [] = []
mergesort (x:xs) = merge2 [x] (mergesort xs)



> mergesort [1,5,3,7,6]
[1,3,5,6,7]

하스켈은 대표적인 함수형 언어로, 변수가 존재하지 않는 신기한 언어이다. 변수가 없으므로 side-effect가 없어 디버깅에 쏟을 시간을 절약할 수 있다.

.. 라지만 이게 내 첫 하스켈 소스이다.

이올린에 북마크하기(0) 이올린에 추천하기(0)

서로소 집합 (Disjoint set)

Posted 2008/02/22 12:54

more..


어떤 두 원소가 같은 그룹에 속해 있는지 알아낼 수 있고, 빠른 시간에 그룹을 결합할 수 있는 자료구조인 서로소 집합입니다. Kruskal 등의 알고리즘을 구현할 때 많이 쓰입니다.
이올린에 북마크하기(0) 이올린에 추천하기(0)

루비로 구현한 Minimum Cut

Posted 2008/02/20 16:05

more..

전혀 루비스럽지 않은 코드 ... orz

많이 느립니다. 다시 구현할 생각입니다.
이올린에 북마크하기(0) 이올린에 추천하기(0)