본문 바로가기

[Algorithm] 길라잡이

by jangThang 2022. 2. 27.
반응형

 Algorithm 게시판은 '알고리즘 이론/개념'을 설명하는 글과, 이와 관련된 '문제 풀이'(백준/프로그래머스)로 이루어져 있습니다.

 아래에서 알고리즘 유형별 개념/이론 및 응용문제 풀이를 보실 수 있습니다.

 

[ Contents ]

     

     

    1. 구현/수학

     

    [Algorithm] 단골 1번 문제, 구현 / 수학

    [ Contents ] 1. 구현  단순히 '구현'만 하면 되는 문제 유형입니다. 문제를 이해하고 입력에 맞춰 적절한 출력만 하면 됩니다. 특별한 알고리즘이나 프로그래밍적 기법 없이, 단순 제어문만 사용하

    star7sss.tistory.com

     

     

    [Algorithm] 최대공약수(GCD) 구하기: 유클리드 호제법

     유클리드 호제법을 이용하면 두 수의 최대공약수를 구할 수 있습니다. 최대공약수는 두 수의 공통인 최대 약수를 말합니다. [ Contents ] 1. 유클리드 호제법 (Euclidean Algorithm) 두 자연수 X, Y가 있을

    star7sss.tistory.com

     

     

    [Algorithm] 소수 판별 알고리즘, 에라토스 테네스의 체

     에라토스 테네스의 체를 통해서 소수를 판별하는 알고리즘을 알아보겠습니다. [ Contents ] 1. 소수 소수(Prime): 약수가 1과 자기 자신밖에 없는 수  '소수'는 1과 자기 자신으로만 나누어 떨어지는

    star7sss.tistory.com

     


    ● 구현/수학 문제

     

    star가 되고나서

    머신러닝 및 답러닝 알고리즘을 이용한 데이터 분석과 시각화를 주로 다루는 IT 블로그입니다. (C, C++, Java, Python, Scala)

    star7sss.tistory.com

     

     

     

    2. 브루트 포스 (Brute Force)

     

    [Algorithm] 브루트 포스(Brute Force)는 노가다 기법?

    [ Contents ] 1. 브루트 포스란?  Brute(짐승 같은, 난폭한) + Force(힘, 폭력)의 합성어입니다. 무식하게 푸는 기법으로, '노가다'에 가까운 접근법입니다. 모든 경우의 수를 시험해보며 문제를 해결합니

    star7sss.tistory.com

     


    ● 브루트포스 문제

     

    star가 되고나서

    머신러닝 및 답러닝 알고리즘을 이용한 데이터 분석과 시각화를 주로 다루는 IT 블로그입니다. (C, C++, Java, Python, Scala)

    star7sss.tistory.com

     

     

     

    3. 그리디 알고리즘 (Greedy)

     

    [Algorithm] 탐욕적인 그리디 알고리즘, 직관적이고 쉬운 문제해결

     경주마들을 자세히 보면, 양쪽 시야를 차단하는 안대를 끼고 있습니다. 이를 '차안대' 라고 합니다. 말의 눈은 양 옆에 달려 있어 시야가 '350도'나 됩니다. 자기 자신 빼곤 다 보이기 때문에, 다

    star7sss.tistory.com

     


    ● 그리디 알고리즘 문제

     

    star가 되고나서

    머신러닝 및 답러닝 알고리즘을 이용한 데이터 분석과 시각화를 주로 다루는 IT 블로그입니다. (C, C++, Java, Python, Scala)

    star7sss.tistory.com

     

     

     

    4. 분할 정복 (Divide & Conquer, DQ)

     

    [Algorithm] 분할정복(DQ, Divide-and-Conquer), 각개격파 알고리즘

    각개격파(各個擊破): 적을 하나하나 따로 떼어 무찌름  유독 외세의 침략을 많이 받았던 우리 민족의 대표적인 전술은 '매복'과 '각개격파'였습니다. 70%가 산악지형인 점을 이용해서, 산개된 적

    star7sss.tistory.com

     


    ● 분할 정복 문제

     

    star가 되고나서

    머신러닝 및 답러닝 알고리즘을 이용한 데이터 분석과 시각화를 주로 다루는 IT 블로그입니다. (C, C++, Java, Python, Scala)

    star7sss.tistory.com

     

     

     

    5. 다이나믹 프로그래밍 (DP, 동적계획법)

     

    [Algorithm] 메모해두고 불러와서 사용하는 동적 프로그래밍(DP)

    [ Contents ] 1. 동적 프로그래밍(Dynamic Programming, 동적계획법) 동적계획법(Dynamic programming, DP): 작은 문제들에 대한 결과를 배열(리스트)에 저장하고, 이를 이용해서 입력 크기가 더 큰 문제를 점진..

    star7sss.tistory.com

     


    ● 다이나믹 프로그래밍(DP) 문제

     

    star가 되고나서

    머신러닝 및 답러닝 알고리즘을 이용한 데이터 분석과 시각화를 주로 다루는 IT 블로그입니다. (C, C++, Java, Python, Scala)

    star7sss.tistory.com

     

     

     

    6. 정렬 / 탐색

     

    [Algorithm] 이진탐색(Binary Search), 반반 나누어서 찾자

    [ Contents ] 1. 이진탐색 (Binary Search, 이분탐색) 이진탐색: 정렬된 자료를 절반씩 나누어서 탐색하는 방법  오름차순(또는 내림차순)으로 정렬된 자료에서 사용합니다. 찾고자 하는 숫자와 자료의

    star7sss.tistory.com

     

     

    [Algorithm] 너비 우선 탐색(BFS), 가까운 주변부터 찾자

     BFS는 가까운 주변부터 탐색하는 알고리즘입니다. 큐를 이용한 BFS 구현방법과 코드를 알아보겠습니다. [ Contents ] 1. BFS(Breath First Search) 너비 우선 탐색(BFS): 가까운 주변 노드부터 탐색하며 점점.

    star7sss.tistory.com

     

     

    [Algorithm] 깊이 우선 탐색(DFS), 끝까지 찾고 넘어가자

     DFS는 인접노드가 없을 때까지, 끝까지 탐색하는 알고리즘입니다. 스택을 이용한 DFS 구현방법과 코드를 알아보겠습니다. [ Contents ] 1. DFS(Depth First Search) 깊이 우선 탐색(DFS): 방문하지 않은 인접.

    star7sss.tistory.com

     

     

    [Algorithm] 백트래킹(Backtracking): 안될 싹은 미리미리 가지치기

     DFS 탐색 중 가능성이 없는 방향은 가지 않는 '백트래킹' 기법에 대해서 알아보겠습니다. [ Contents ] 1. DFS 2022.02.23 - [Algorithm] - [Algorithm] 깊이 우선 탐색(DFS), 끝까지 찾고 넘어가자 [Algorithm]..

    star7sss.tistory.com

     

     

    [Algorithm] 다익스트라(Dijkstra), 지름길의 지름길로 찾는 최적경로

     다익스트라는 출발지부터 목적지까지의 최적 경로를 탐색해주는 알고리즘입니다. 다익스트라의 이론적 설명과 구현 방법, 경로 추적까지 살펴보겠습니다. [ Contents ] 1. 다익스트라(Dijkstra) 알

    star7sss.tistory.com

     

     

    [Algorithm] 플로이드-와샬, 모든 쌍의 최적경로 구하기

    모든 쌍의 최단 경로를 '플로이드 - 와샬' 알고리즘으로 구하는 방법을 알아보고, 구현 코드도 살펴보겠습니다. [ Contents ] 1. 모든 쌍의 최단 경로  위 그래프 그림에서 '노드(Node)'는 원으로 된 지

    star7sss.tistory.com

     


    ● 정렬 및 탐색 문제

     

    star가 되고나서

    머신러닝 및 답러닝 알고리즘을 이용한 데이터 분석과 시각화를 주로 다루는 IT 블로그입니다. (C, C++, Java, Python, Scala)

    star7sss.tistory.com

     

     

     

    7. 자료구조

     

    [Algorithm] 스택(stack), 차곡차곡 쌓는 자료구조

    [ Contents ] 1. 스택(Stack) 스택(Stack): 후입선출(Last-in-First-out). 가장 최근에 들어간 자료부터 꺼내는 자료구조  스택은 말 그대로 쌓는(stack) 자료 구조입니다. 아래서부터 차곡차곡 쌓은 다음, 위에.

    star7sss.tistory.com

     

     

    [Algorithm] 큐(Queue), 선입선출 줄서기 자료구조

    [ Contents ] 1. 큐(Queue) 큐(Queue): 선입선출(First-in-First-out), 가장 먼저 들어간 자료부터 꺼내는 자료구조  큐는 '줄 서는 것'과 비슷합니다. 먼저 들어가서 기다린 자료부터 차례차례 꺼냅니다. 앞에.

    star7sss.tistory.com

     

     

    [Algorithm] 힙(heap), 최소/최대로 정렬하는 우선순위 큐

     그래프의 트리 구조 중 하나인 '힙'과 구현 방법에 대해 알아보고, 그와 관련된 우선순위 큐도 살펴보겠습니다. [ Contents ] 1. 완전 이진트리(Complete Binary Tree) 완전 이진트리: 왼쪽부터 오른쪽으

    star7sss.tistory.com

     


    ● 자료구조 문제

     

    star가 되고나서

    머신러닝 및 답러닝 알고리즘을 이용한 데이터 분석과 시각화를 주로 다루는 IT 블로그입니다. (C, C++, Java, Python, Scala)

    star7sss.tistory.com

     

    star가 되고나서 Tistory

    반응형