• C / C++,  Programming

    [C++] STL set / map사용법

    C++에서 다양한 STL을 제공하는데, 그 중에서 set과 map을 소개한다. 두 자료구조 모두 공통으로 associative container다. Sequential container: array, vector, list Associative container: set, map set set은 특정 기준에 의해 element가 자동으로 정렬되는 자료구조로…

  • C / C++,  Programming

    [C++] STL priority_queue 사용법

    C++에서 다양한 STL을 제공하는데, 그 중에서 priority_queue를 소개하고자 한다. Introduction 기본적으로 queue는 FIFO (First In First Out) 방식의 자료 구조로 들어온 순서로 나가는 순서도 동일한 자료구조다. 내가 만약 5, 3, 1, 2, 4…

  • Algorithm,  Study

    [Algorithm] Dijkstra Algorithm

    Dijkstra algorithm은 한 점 (vertex)에서 모든 점까지 최단거리를 구하는 알고리즘이다. 자료구조에서는 graph 이론을 배우면서 반드시 알아야 할 내용이다. 각 vertex까지 최단거리를 구하는 과정은 다음과 같다. 초기화: 아직 방문하지 않는 vertex에 대해서는 거리는 무한대,…

  • Algorithm,  Study

    [Algorithm] Union-Find Algorithm

    Union-Find 알고리즘은 그래프 알고리즘 중 하나로 “합집합 찾기”를 위해 사용되는 대표적인 알고리즘이다. 사용되는 연산 과정은 다음과 같다. Find: x가 어떤 집합에 속해있는지 찾는 연산 Union: x와 y가 속한 집합을 합치는 연산 Example Step…

  • Algorithm,  Study

    [Algorithm] Kruskal’s Algorithm

    Introduction (including Spanning Tree) Kruskal 알고리즘이란 최소한의 비용으로 다수의 노드를 연결을 greedy하게 할 때 사용하는 알고리즘이다. 이 알고리즘은 보통 Spanning Tree를 만들 때 사용되는데, Spanning Tree란 graph 구조에서 모든 vertex가 서로 연결이 되는데…

  • Experience,  Persnal

    합리적 보험 가입을 위한 Tip

    우리가 보험을 가입 할 때 “사기를 당하지 않게 조심해야한다” 라는 인식이 매우 강하다. 따라서 이 포스트 작성을 통해 개인적인 공부와 다른 누군가에게 도움이 될 수 있도록 정리를 해보고자 한다. 보험 가입 시 우선시…