코딩테스트 유형별 풀이 START

말하는 감자·2024년 8월 21일
1

안녕하세요!

오늘부터 유형별 코딩 테스트 풀이를 위한 학습 일지를 작성하려고 합니다. 이번 시리즈는 코딩 테스트에 자주 출제되는 알고리즘과 자료구조를 주제로 하며, 각 주제별로 문제를 풀고, 풀이 과정을 공유할 예정입니다. 이를 통해 스스로의 실력을 다지고, 여러분에게도 도움이 되길 바랍니다.

문제 해결을 위한 기본 준비

먼저, 코딩 테스트에서 자주 사용되는 자료구조와 알고리즘을 다음과 같이 분류했습니다. 각 주제는 이론 학습과 함께 실전 문제 풀이를 통해 접근할 예정입니다.

자료구조

  1. 스택, 큐, 덱: 기본적인 선형 자료구조로, 다양한 문제에서 효율적인 해결 방법을 제공합니다.
  2. 해시 테이블: 데이터의 빠른 검색과 삽입을 위해 사용되며, 많은 경우에 시간 복잡도를 줄일 수 있습니다.
  3. : 우선순위 큐를 구현할 때 자주 사용되며, 최솟값 또는 최댓값을 빠르게 찾을 수 있는 구조입니다.
  4. 문자열 처리: 다양한 패턴 매칭, 변환 및 조작을 위해 필수적으로 이해해야 하는 개념입니다.

알고리즘

  • 그리디: 매 순간 최적의 선택을 하는 방법으로, 단순하지만 강력한 알고리즘입니다.
  • 구현: 문제를 직접 코드로 구현하는 능력을 요구하는 유형으로, 문제의 요구사항을 정확히 파악하는 것이 중요합니다.
  • DFS/BFS: 그래프 탐색 알고리즘으로, 깊이 우선 탐색(DFS)과 너비 우선 탐색(BFS)을 이해하면 그래프 문제를 쉽게 풀 수 있습니다.
  • 정렬: 데이터를 특정 순서대로 정렬하는 알고리즘으로, 문제의 전처리 과정에서 자주 사용됩니다.
  • 완전 탐색 (Bruteforce): 가능한 모든 경우를 탐색하여 문제를 해결하는 방법으로, 비효율적일 수 있지만 경우에 따라 유용합니다.
  • 이진 탐색: 정렬된 데이터에서 빠르게 원하는 값을 찾는 방법입니다.
  • 동적 프로그래밍(DP): 문제를 부분 문제로 나누어 효율적으로 해결하는 방법으로, 복잡한 최적화 문제에서 자주 등장합니다.
  • 최단 경로: 그래프에서 두 노드 간의 최단 경로를 찾는 알고리즘입니다.
  • 그래프: 노드와 간선으로 이루어진 구조로, 다양한 문제에서 핵심 개념으로 등장합니다.

문제 풀이 사이트

  1. 백준
  2. 프로그래머스
  3. LeetCode

참고 서적

  1. 이것이 취업을 위한 코딩 테스트다 with 파이썬
  2. 프로그래머스 코딩테스트 문제풀이 전략: 파이썬 편
  3. 코딩 도장: 이것은 파이썬 개념을 익히기 위한 용도입니다.

첫 번째 주제: 스택, 큐, 덱

이번 시리즈의 첫 번째 주자는 스택(Stack), 큐(Queue), 그리고 덱(Deque)입니다. 이 자료 구조들은 데이터를 특정한 순서로 처리해야 할 때 유용하며, 다양한 알고리즘 문제에서 등장합니다.

앞으로의 계획

앞으로 매일 최소 1문제씩 풀고, 해당 문제의 풀이와 함께 관련 개념을 블로그에 정리해 올리겠습니다 (현재 개념은 올리고 있습니다).

이를 통해 저 자신도 꾸준히 성장하고, 이 블로그를 방문하는 분들도 함께 공부할 수 있는 기회를 만들고자 합니다.

끝으로, 여러분과 함께 더 나은 개발자로 성장하기를 기대하며, 이 블로그가 작은 도움이 되기를 바랍니다. 많은 피드백 부탁드리고, 언제든지 질문이나 의견을 남겨주세요!

감사합니다.

🚀 기본 알고리즘 및 자료구조는 개념 정리및 구현 코드를 제 벨로그에 올리고 있습니다. 많은 관심 부탁드립니다!

➕ 추가 - 8월 31일 작성)

유형별 풀이를 하기전에 사실 프로그래밍 언어와 익숙해지고,컴퓨팅 사고력을 먼저 키우는게 우선입니다. 이 포스팅에는 작성하지 않았지만 추가적으로 도움이 될 것 같아서 이런 기본기를 키우는 데 도움이 되는 문제들을 추천합니다.

  1. 코드업 기초 100제
    아쉽게도 이것은 파이썬과 C언어 밖에 없습니다. 진짜 기초중에 기초여서 언어에 익숙해지지 않았다면 풀어보는 것을 추천드립니다. 코드는 저의 깃허브에서 보실수 있습니다.

  2. 프로그래머스 기초 문제, 입문 문제
    프로그래머스의 Lv. 0에 해당하는 문제들이 있습니다. 하루에 4문제씩 계획을 작성해서 풀 수 있습니다.
    풀이 코드는 저의 깃허브에 나와있습니다.

  3. 백준의 단계별로 풀어보기백준 solved.ac
    단계별로 풀어보기 문제는 16단계, solved.ac문제는 class3 까지의 문제를 풀어보면 좋을것 같습니다.

현재 1, 2번은 완료했고, 백준의 단계별로 풀어보기, 백준 solved.ac를 진행중에 있습니다.

앞으로 자료 구조, 알고리즘 유형별 문제 외에도 배우거나 얻는점이 있는 문제들도 TIL에 올릴 것같습니다.

➕ 추가 - 9월 6일 작성)

알고리즘 유형은 그리디 알고리즘을 시작으로 할 것 같습니다.

백준 사이트에서 문제/알고리즘/그리디 알고리즘으로 들어가서 브론즈, 실버 단계만 선택을하고 맞힌 사람이 많은 순서대로 문제를 풀 예정입니다.
https://www.acmicpc.net/problemset?sort=ac_desc&algo=33

profile
할 수 있다

0개의 댓글

관련 채용 정보