개발자

코딩테스트 관련해서 조언좀 듣고 싶습니다.

2024년 04월 28일조회 203

안녕하세요. 저는 지방 4년제 안드로이드앱 개발자를 희망하는 졸업을 앞둔 학생입니다. 현재 코틀린으로 알고리즘을 공부하고 있는데, 정말 자신이 의심될 정도로 알고리즘이 약한 것 같습니다. 현재 취업공고만 보더라도 입사과정에 알고리즘이 포함되어 있고, 싸피지원을 위해서라도 열심히 하고자 하는 마음이 있습니다. 하지만 현재 한달 째 진행중인데, 한없이 부족하다 라는 생각이 듭니다. 보통 골드 5 ~ 실버1 문제를 한시간정도 고민하셔서 푼다고 하시던데, 저는 정말 2-3시간을 보더라도 예제 출력은 커녕 코드 구조를 짜는 것 조차 쉽지가 않습니다. 풀이를 보고나서야 조금 이해가 되기도 합니다. 물론 남들과 비교하는건 좋지 않지만, 두서없이 글을 쓴 것 같습니다.. 현재 공부방법은 누적합, dfsbfs, 트리 순회 순서로 하고 있습니다. 조언 부탁드리겠습니다...

이 질문이 도움이 되었나요?
'추천해요' 버튼을 누르면 좋은 질문이 더 많은 사람에게 노출될 수 있어요. '보충이 필요해요' 버튼을 누르면 질문자에게 질문 내용 보충을 요청하는 알림이 가요.
profile picture
익명님의 질문

답변 2

삭제된 사용자님의 프로필 사진

삭제된 사용자

2024년 04월 29일

안녕하세요. 주변에 들은 얘기들을 기준으로만 말씀드리고자 합니다. 참고만 하시길 바랍니다. 일단 알고리즘과 PS(Problem solving, 코테) 연습은 크게 두 가지를 병행하시면 좋을 것 같습니다. 1. well-known 알고리즘 연습 말씀하신 트리, 그래프(DFS, BFS) 등의 자료구조부터 PS에 자주 나타나는 알고리즘 및 자료구조(누적합, Segment tree, DP, Greedy algorithm, MCMF 등)을 유형 별로 공부합니다. 이러한 부류들은 모르면 풀기 어렵지만 알면 빠르게 풀리는 경우가 많으며, 잘 체계화된 느낌이 강하므로 깡으로 부딪히면서 공부하는 것보다 효율적인 경우가 많습니다. 다양한 인터넷 자료 및 서적이 있을 뿐만 아니라, 단순하게는 백준의 알고리즘 분류를 통해서 연습해볼 수 있습니다. 2. 문제 양치기 개인적으로 주변에서 듣기로는 PS는 양치기를 해서 익숙해지는 게 중요합니다. 입력, 출력 조정부터 문제를 보고 빠르게 코드 형태로 변환하는 것은 연습의 영역이지 지식의 영역이 아니라고 보는 경우가 많았습니다. 마치 수능 수학 공부하듯이요. 양치기를 하다 보면, 문제 유형이 눈에 익으며 더 빠르게 정답을 유추할 수 있습니다. 사소하게는 입력 크기가 16을 넘지 않으면 TSP 문제일 확률이 높다는 식도 있습니다. 또한, 어떤 문제를 푸는 최적의 알고리즘(구현이 어려움)이 있다고 하더라도, 처음에는 빠르게 떠오르는 것들을 먼저 시도하면서 풀게 됩니다. 그러다 보면, 구현이 어려운 최적 알고리즘이 아니더라도 시간과 공간 제한을 만족하는 다른 쉬운 풀이를 발견하면서 시간을 절약할 수도 있습니다. 이러한 전략도 연습이 많이 되어 있는 경우 가능한 것입니다. 물론 적합한 공부 방식은 사람마다 차이가 있으며, 제 정보도 누군가에게는 부적합할 수 있으니 참고만 하시길 바랍니다. 도움이 되셨길 바랍니다.

이윤호님의 프로필 사진

저는 코딩테스트 멘탈 싸움이라고 생각합니다. 저는 백준 골드1을 찍어봤는데 알고리즘 공부 초반이 제일 괴롭고 힘들었었습니다. 한달내내 제대로 못풀었는데 점점 익숙해지더니 어느샌가 그냥 적당히 풀리더라구요. 그냥 버티다 보면 어느샌가 실력이 늡니다. 그리고 신입 안드로이드 개발자를 노리시는거면 알고리즘 테스트를 보는 기업보단 과제테스트를 보는 기업이 많으니 차라리 알고리즘보단 안드로이드 개발 실력을 키우는게 취업에 유리하지 않을까 생각합니다. 저 또한 취준생시절 알고리즘 열심히 풀어놓고 결국 과제테스트보고 입사했습니다 ㅋㅋ

지금 가입하면 모든 질문의 답변을 볼 수 있어요!

현직자들의 명쾌한 답변을 얻을 수 있어요.

또는

이미 회원이신가요?

목록으로
키워드로 질문 모아보기

실무, 커리어 고민이 있다면

새로운 질문 올리기

지금 가입하면 모든 질문의 답변을 볼 수 있어요!