Computer Science
-
[Distributed System] Partial Order & Total OrderComputer Science/Distributed System 2017. 3. 30. 14:41
[Distributed System] Partial Order & Total Order Partial Order(부분 순서 집합) : 부분 순서가 정의된 집합을 그 부분 순서와 같이 partially ordered set이라고 한다.모든 원소가 비교 가능할 것을 요구하지 않는다.ex. 가계도 : 어떤 두 사람은 조상과 후손의 관계이나, 어떤 두 사람들은 그런 관계가 없다. Total Order(전순서 집합) : 임의의 두 원소를 비교할 수 있는 부분 순서 집합.즉, 모든 원소가 비교 가능한 부분 순서. Referenceshttps://ko.wikipedia.org/wiki/%EB%B6%80%EB%B6%84_%EC%88%9C%EC%84%9C_%EC%A7%91%ED%95%A9https://ko.wikiped..
-
[분산시스템] wait-free 알고리즘, bounded, unboundedComputer Science/Distributed System 2017. 3. 28. 11:30
Wait-freedom wait-free 알고리즘 : 모든 명령어들이 유한한 step 안에 해당 명령어를 완료하는 알고리즘. real-time system에서 중요한 요소이다 wait-free는 주로 두 가지 종류로 나뉜다.bounded wait-free와 unbounded wait-free이다.bounded wait-free는 정해진 step 이내에 명령어들이 수행되는 알고리즘을 뜻한다. 즉, 정해진 step이 알려져 있다.unbounded wait-free는 wait-free 알고리즘 중, 알려진 step 한도가 없는 알고리즘을 뜻한다. Referenceshttp://concurrencyfreaks.blogspot.kr/2016/09/wait-free-bounded-vs-wait-free-unboun..
-
[분산 시스템] linearizabilityComputer Science/Distributed System 2017. 3. 27. 15:00
Linearizability (원자성, atomicity)atomic, linearizable, indivisible, uninterruptible.atomic operation들은 succeed-or-fail definition을 갖고 있다. (성공적으로 시스템 상태를 업데이트시키거나, 아무런 효과가 없거나)원자성(atomicity)은 어떤 것이 더 이상 쪼개질 수 없는 성질을 말한다. 어떤 것이 원자성을 가지고 있다면 원자적(atomic)이라고 한다. 어떠한 작업이 실행될때 언제나 완전하게 진행되어 종료되거나, 그럴 수 없는 경우 실행을 하지 않는 경우를 말한다. 원자성을 가지는 작업은 실행되어 진행되다가 종료하지 않고 중간에서 멈추는 경우는 있을 수 없다. Referencehttps://en.wik..
-
[자료구조] 우선순위 큐, 히프Computer Science/Data Structure 2016. 10. 18. 08:29
priority queue(우선순위 큐)의 가장 효율적인 구현 방법은 heap 히프 : 여러 개의 값들 중, 가장 큰 값이나 가장 작은 값을 빠르게 찾아내도록 만들어진 자료 구조.완전 이진 트리의 일종. 삽입, 삭제 연산의 복잡도 : O(log(n)) //트리 구조는 높이! logn max heap(최대 히프) : 부모 노드의 키값 >= 자식 노드의 키값 min heap(최소 히프) : 부모 노드의 키값 min heap 사용 -> 삭제연산을 반복하면서 return값들 순서대로내림차순 정렬 -> max heap 사용 -> 삭제 연산을 반복하면서 return값들 순서대로 4. 허프만 코드
-
[자료구조] 정렬Computer Science/Data Structure 2016. 10. 18. 02:55
1. 선택 정렬(Selection Sort) : O(n^2) 정렬된 리스트 | 정렬되지 않은 리스트 오름차순일 때정렬이 안 된 숫자 중, 가장 작은 수를골라 정렬 안 된 리스트 중 가장 왼 쪽의 원소와 교환하고, 정렬 된 리스트에 포함시킨다.ex.) 5 3 8 1 2 71 ) 3 8 5 2 71 2 ) 8 5 3 71 2 3 ) 5 8 71 2 3 5 ) 8 71 2 3 5 7 ) 81 2 3 5 7 8 ) 2. 삽입 정렬 (Insertion sort) : O(n^2) 정렬된 리스트 | 정렬되지 않은 리스트 오름차순일 때정렬되어있지 않은 리스트의 첫 번째 숫자가 정렬된 리스트의 어느 위치에 삽입되어야하는가를 판단한 후, 해당 위치에 숫자를 삽입.-> 점점 정렬된 리스트의 크기를 키워 나감. ex.) 5 ..