2020 WONIZZ.LOG

2020 WONIZZ.LOG 안녕하세요? 정리하는 개발자 워니즈입니다. 2020년을 마무리하는 마지막날입니다. 1년의 마지막날은 WONIZZ.LOG를 기록해두며, 한 해동안 워니즈는 어떻게 살았는지 그리고 앞으로는 무엇을 할것인가에 대한 고민을 기억하기…

[Algorithms] BFS, DFS 알고리즘

[Algorithms] BFS, DFS 알고리즘 안녕하세요? 정리하는 개발자 워니즈입니다. 이번시간에는 기본 알고리즘중 하나인 BFS, DFS 알고리즘에 대해서 정리를 해보도록 하겠습니다. 그래프의 모든 노드를 방문하는 알고리즘으로, 면접시에도…

[문제풀이] 군사도로망

[문제풀이] 군사도로망 1. 설명 군사도로망 문제 어떤 나라는 NN개의 도시로 구성되어 있다. 도시들을 연결하는 도로들이 있는데, 도로라는 것은 서로 다른 두 도시를 연결하는 기능을 하며,…

[Algorithms] LCA 알고리즘

[Algorithms] LCA 알고리즘 안녕하세요? 정리하는 개발자 워니즈입니다. 이번시간에는 이진트리에서 최저 공통 조상을 찾아나가는 알고리즘인 LCA(Lowest Common Ancestor) 알고리즘에 대해서 정리를 해보도록 하겠습니다. LCA 알고리즘은 최소…

[Algorithms] 세그먼트 트리

[Algorithms] 세그먼트 트리 안녕하세요? 정리하는 개발자 워니즈입니다. 이번시간에는 알고리즘 자료구조중 가장 많은 활용도를 보이는 세그먼트 트리에 대해서 정리를 해보도록 하겠습니다. 세그먼트 트리는 여러개의 데이터가 연속적으로…

[Algorithms] 벨만-포드 알고리즘

[Algorithms] 벨만-포드 알고리즘 안녕하세요? 정리하는 개발자 워니즈입니다. 이번시간에는 최단거리 알고리즘중 음의 가중치도 계산이 가능한 벨만-포드 알고리즘에 대해서 정리를 해보도록 하겠습니다. 다익스트라보다 시간 복잡도가 높기에 어떤…

[Algorithms] 우선순위 큐 다익스트라

[Algorithms] 우선순위 큐 다익스트라 안녕하세요? 정리하는 개발자 워니즈입니다. 이번시간에는 최단거리 알고리즘인 다익스트라에 대해서 정리를 해보려고 합니다. 1. 다익스트라 기본 개념 다익스트라 알고리즘은 너비우선탐색(BFS)를 기본으로 합니다.…

[Algorithms] Heap, Priority Queue

[Algorithms] Heap, Priority Queue 안녕하세요? 정리하는 개발자 워니즈입니다. 이번시간에는 우선순위 큐에 대해서 정리하는 시간을 갖어 보겠습니다. 지난 시간에 이어서 자료구조중 하나로 알고리즘에서 많이 활용되는 형태입니다.…

[Algorithms] Stack, Deque, ArrayList, LinkedList

[Algorithms] Stack, Deque, ArrayList, LinkedList 안녕하세요. 정리하는 개발자 워니즈입니다. 이번시간에는 알고리즘을 공부하면서, 필수적으로 알아야될 내용인 자료 구조에 대해서 정리를 해보고자 합니다. 단순한 자바프로그램에서는 데이터를 관리하고…

[Algorithms] 최소 스패닝 트리(Minimum Spanning Tree)

그래프의 모든 노드를 포함하고, 모든 노드가 서로 연결되어 있으면서 트리(Tree)의 속성을 만족하는 그래프를 가리킵니다. 예를들어 하단 좌측과 같은 원 그래프의 스패닝 트리는 하단 우측과 같이 총 8개의 스패닝 트리들을 가질 수 있습니다.