본문 바로가기

728x90
반응형

컴퓨터 공학/자료구조와 알고리즘

자료구조 - 다익스트라 그림으로 쉽게 이해하기 자료구조 - 다익스트라 그림으로 쉽게 이해하기 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 많은 사람들이 궁금해하시고 많이들 헷갈려하시는 내용을 바탕으로 자료구조 - 다익스트라 그림으로 쉽게 이해하기에 대해서 같이 알아보겠습니다. 정말 그림으로 쉽게 이해할 수 있으니 끝까지 잘 따라와주세요 :) 바로 시작하겠습니다. - 다익스트라 이번 시간에는 그래프의 최단거리 탐색 알고리즘인 다익스트라 알고리즘에 대해서 알아보도록 하겠습니다. 그래프에서 최단 경로를 찾아내기 위한 경로는 많이 있지만 그 중에서 가장 기본이 되는 알고리즘이 다익스트라 알고리즘입니다. 다른 최단경로 알고리즘은 다익스트라를 베이스로한 알고리즘이 많아요. 그래서 다익스트라를 이해하는게 먼저겠죠. 다익스트라는 가중치가 있는 그래프 상의 한 ve.. 더보기
자료구조 - 그래프 위상정렬 그림으로 쉽게 이해하기 자료구조 - 그래프 위상정렬 그림으로 쉽게 이해하기 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 많은 사람들이 궁금해하시고 많이들 헷갈려하시는 내용을 바탕으로 자료구조 - 그래프 위상정렬 그림으로 쉽게 이해하기에 대해서 같이 알아보겠습니다. 그림으로 쉽게 이해할 수 있으니 끝까지 잘 따라와주세요 :) 바로 시작하겠습니다. - 위상정렬 Topological sorting 이번 포스팅에서는 위상정렬에 대해서 알아보도록 하겠습니다. 위상정렬이 이름만 들어서는 무엇인지 잘 감이 안오실 것 같아요. 위상정렬은 사이클이 없고 방향이 있는 비순환 방향그래프에서 vertex를 순서대로 출력하는 알고리즘 입니다. 아래의 그림과 같은 방향그래프에서 E노드는 C와 F노드 모두의 의존성이 있어서 C와 F가 모두 방문된 후에 .. 더보기
자료구조 - 그래프 탐색 DFS 그림으로 쉽게 이해하기 자료구조 - 그래프 탐색 DFS 그림으로 쉽게 이해하기 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 많은 사람들이 궁금해하시고 많이들 헷갈려하시는 내용을 바탕으로 자료구조 - 그래프 탐색 DFS 그림으로 쉽게 이해하기에 대해서 같이 알아보겠습니다. 그림으로 쉽게 이해할 수 있으니 끝까지 잘 따라와주세요 :) 바로 시작하겠습니다. - 그래프 탐색 DFS 이번 포스팅에서는 그래프의 탐색 방법 중 하나인 DFS에 대해서 알아보겠습니다. DFS는 Depth-First Search의 약자로 한글로 번역하면 깊이우선탐색 이라고 합니다. BFS가 가까운 곳부터 탐색하는 방법 이라면 DFS는 갈 수 있는 최대한 멀리까지 탐색하는 방법이라고 생각하시면 될 것 같습니다. 우리가 배웠던 트리탐색에서 전위탑색(preorder.. 더보기
자료구조 - 그래프 탐색 BFS 그림으로 쉽게 이해하기 자료구조 - 그래프 탐색 BFS 그림으로 쉽게 이해하기 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 많은 사람들이 궁금해하시고 많이들 헷갈려하시는 내용을 바탕으로 자료구조 - 그래프 탐색 BFS 그림으로 쉽게 이해하기에 대해서 같이 알아보겠습니다. 그림으로 쉽게 이해할 수 있으니 끝까지 잘 따라와주세요 :) 바로 시작하겠습니다. - 그래프 탐색 BFS 이번 포스팅에서는 그래프의 탐색 방법 중 하나인 BFS에 대해서 알아보겠습니다. BFS는 Breath-First Search의 약자로 한글로 번역하면 너비우선탐색 이라고 합니다. 너비우선이라는 것은 간단하게 말씀드리면 가까운 곳부터 탐색하는 탐색방법이라고 보시면 됩니다. 그래서 BFS는 그래프에 있어서 가까운 곳부터 너비를 먼저 탐색을 한다는 것인데 트리도.. 더보기
자료구조 - 그래프(Graph) 그림으로 쉽게 이해하기 자료구조 - 그래프(Graph) 그림으로 쉽게 이해하기 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 많은 사람들이 궁금해하시고 많이들 헷갈려하시는 내용을 바탕으로 자료구조 - 그래프(Graph) 그림으로 쉽게 이해하기에 대해서 같이 알아보겠습니다. 그림으로 쉽게 이해할 수 있으니 끝까지 잘 따라와주세요 :) 바로 시작하겠습니다. - 그래프(Graph)란? 이번 포스팅에서는 그래프의 자료구조에 대해서 알아보겠습니다. 우선 그래프는 vertex와 edge로 구성된 자료구조입니다. vertex는 우리가 여태 써왓던 노드와 비슷한 개념이고 edge는 vertex간에 연결 관계를 나타냅니다. 그리고 두 vertex가 edge로 연결되어 있다면 두 vertex는 '인접해있다'고 말합니다. 앞에서 배운 트리도 그래프.. 더보기
자료구조 - 힙(Heap) 그림으로 쉽게 이해하기 자료구조 - 힙(Heap) 그림으로 쉽게 이해하기 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 많은 사람들이 궁금해하시고 많이들 헷갈려하시는 내용을 바탕으로 자료구조 - 힙(Heap) 그림으로 쉽게 이해하기에 대해서 같이 알아보겠습니다. 그림으로 쉽게 이해할 수 있으니 끝까지 잘 따라와주세요 :) 바로 시작하겠습니다. - 힙(Heap) 이번 포스팅에서는 힙(Heap)에 대해서 알아보겠습니다. 우리가 앞으로 다룰 힙은 자료구조에서의 힙을 의미하지만 자바에서 사용하는 메모리 영 역중에 '힙'이라는 메모리 공간이 있다는 것을 알고 계시면 좋습니다. 동일하게 '힙'이라는 용어를 사용하지만 아예 다른 개념이기 때문에 헷갈리시면 안됩니다. 그래서 나중에 면접에서 혹시 "자바 메모리 공간의 힙 영역에 대해서 설명해보.. 더보기
자료구조 - 이진탐색트리(BST) 그림으로 쉽게 이해하기 자료구조 - 이진탐색트리(BST) 그림으로 쉽게 이해하기 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 많은 사람들이 궁금해하시고 많이들 헷갈려하시는 내용을 바탕으로 자료구조 - 이진탐색트리(BST) 그림으로 쉽게 이해하기에 대해서 같이 알아보겠습니다. 그림으로 쉽게 이해할 수 있으니 끝까지 잘 따라와주세요 :) 바로 시작하겠습니다. - 이진탐색트리 (Binary Search Tree) 시간복잡도 우선 트리구조는 그 자체만으로는 데이터 값에 대한 어떠한 제약도 없습니다. 그럼 이 상황에서 어떤 특정한 값을 찾기 위해서는 결국 트리의 모든 데이터를 탐색을 해야하는 상황이 발생합니다. 그러면 데이터 N개 만큼 탐색이 이루어져야 하기 때문에 시간 복잡도에 있어서 별다른 이점이 없게 됩니다. 이진탐색트리는 데이터.. 더보기
자료구조 트리탐색 - 후위탐색(Postorder) 그림으로 쉽게 이해하기 자료구조 트리탐색 - 후위탐색(Postorder) 그림으로 쉽게 이해하기 안녕하세요. 로스윗의 코딩캠프입니다. 오늘은 많은 사람들이 궁금해하시고 헷갈려하시는 내용을 바탕으로 자료구조 트리탐색 - 후위탐색(Postorder) 그림으로 쉽게 이해하기에 대해서 같이 알아보겠습니다. 그림으로 쉽게 이해할 수 있으니 끝까지 잘 따라와주세요 :) 바로 시작하겠습니다. - 후위탐색 Postorder 이번 시간에는 트리탐색의 방법 중 하나인 후위탐색(Postorder)에 대해서 알아보겠습니다. 후위탐색은 먼저 1)왼쪽 서브트리를 inorder하게 되고, 그 다음으로 2)오른쪽 서브트리를 방문한 다음에 마지막으로 3)루트 노드를 후위탐색(Postorder)하게 됩니다. 아래의 트리를 한 번 후위탐색 해보도록 하겠습니다... 더보기

728x90
반응형