본문 바로가기

programing150

비재귀 퀵소트 #include #include void QuickSort(int* array, int n) { int start, end, left, right; int pivot, t; int* pBase; int top = -1; pBase = (int*)malloc(sizeof(int)*(2*n+2)); pBase[++top] = n-1; pBase[++top] = 0; while(top != -1) { start = pBase[top--]; end = pBase[top--]; if(end-start > 0) { pivot = start; left = start + 1; right = end; while(1) { while(array[left] < array[pivot] && left= left && array[.. 2015. 6. 4.
그래프 관련 알고리즘 - 신장 트리 : 순환이 없는 트리 > 깊이 우선 탐색(DFS : Depth-First Search) -> 깊이 우선 신장 트리(Depth First Spanning Tree) > 넓이 우선 탐색(BFS : Breadth-First Search) -> 넓이 우선 신장 트리(Breadth First Spanning Tree) - 최소 신장 트리 : 가중치의 합이 최소인 신장트리 - Kruskal Algorithm > 그래프의 모든 간선을 비용 순으로 정렬한 뒤 낮은 비용을 가지는 순환시키지 않는 간선을 선택 1) 모든 간선을 가중치 값에 따라 오름 차순으로 정렬 2-1) 가장 가중치가 작으면서 순환을 발생시키지 않는 간선 추출, 순환시 해당 간선 제외 2-2) 그래프의 모든 노드가 .. 2015. 6. 4.
[펌] Modern C++ 프로그래머를 위한 CPP11/14 핵심 http://www.slideshare.net/jacking/modern-c-cpp11-14 Modern C++ 프로그래머를 위한 CPP11/14 핵심 from 흥배 최 2015. 6. 3.
[펌] Let`s learn ! Effective C++ http://www.slideshare.net/thtjdhdj10/lets-learn-effective-c Let`s learn ! Effective C++ from 승현 김 2015. 6. 3.