IT 개발 관련/[TIL]

[항해99 취업 리부트 코스 학습일지] 4주차 알고리즘 학습 Day 1

Baileyton 2024. 6. 12. 20:29
728x90

Q. 오늘 진행된 강의에서 학습한 내용은 무엇인가요?

시뮬레이션 문제란?

시뮬레이션 문제는 구현 문제의 한 유형으로, 특정 상황을 코드로 시뮬레이션하여 해결하는 문제입니다. 이러한 문제는 난이도가 높을 수 있지만, 복잡한 알고리즘보다 명확한 구현 능력이 요구되는 경우가 많습니다.

왜 시뮬레이션 문제가 중요한가?

  • 코딩 테스트에서 빈번히 출제: 많은 기업의 코딩 테스트에서 자주 출제됩니다.
  • 구현 능력 평가: 단순한 알고리즘 능력보다는 문제를 이해하고 코드를 통해 정확하게 구현하는 능력을 평가하는 데 적합합니다.

필요한 도구

  1. 자료구조: 효율적인 문제 해결을 위한 기본적인 자료구조.
  2. 시간복잡도 계산: 알고리즘의 효율성을 평가하고 시간복잡도를 계산하는 능력.
  3. 그래프 기초: BFS, DFS와 같은 그래프 탐색 기법.
  4. 브루트포스(완전탐색): 가능한 모든 경우의 수를 탐색하는 방법.
  5. 순열/조합: 다양한 경우의 수를 계산하는 방법.

완전탐색이란?

완전탐색은 가능한 모든 경우의 수를 탐색하는 알고리즘입니다. 가장 단순하지만 모든 해를 조사하여 문제를 해결하는 방식으로, 가장 적절한 해를 선택하는 데 유용합니다.

예를 들어, 1부터 9까지의 숫자가 적힌 카드 중 3장의 카드를 뽑아서 합이 15가 되는 경우를 찾는 문제를 생각해볼 수 있습니다. 이 경우 모든 가능한 3장의 조합을 탐색한 후, 합이 15가 되는지 확인하면 됩니다.

 

 

Q. 이번 주 진행된 팀 스터디에서 얻은 인사이트는 무엇인가요?

백트래킹의 활용한 풀이법도 진행해보기

완전탐색에서 백트래킹 기법은 매우 유용합니다. 백트래킹은 해를 찾는 도중에 해가 아닌 경우 되돌아가서 다시 해를 찾아가는 기법입니다. 이를 통해 불필요한 경우의 수를 줄이고, 효율적으로 문제를 해결할 수 있습니다.

 

오늘 문제는 3중 for 문으로 문제풀이를 진행하였는데, 백트래킹으로도 다시 풀어보며 구현 능력을 키우는 방법, 다양한 접근 방식, 팀원들의 코드를 참고하면 코딩 테스트 실력을 쌓아나갈수 있을 것 같다.

 

 

 

항해99 취업 리부트 코스를 수강하고 작성한 콘텐츠 입니다.

https://hanghae99.spartacodingclub.kr/reboot

 

IT 커리어 성장 코스 항해99, 개발자 취업부터 현직자 코스까지

항해99는 실무에 집중합니다. 최단기간에 개발자로 취업하고, 현직자 코스로 폭발 성장을 이어가세요. 실전 프로젝트, 포트폴리오 멘토링, 모의 면접까지.

hanghae99.spartacodingclub.kr

 

728x90