상세 컨텐츠

본문 제목

FAQ: 알고리즘 공부와 고등학교 수학

문제풀이

by Gravekper 2022. 7. 1. 07:32

본문

이 글은 알고리즘 강사 일을 하며 강의나 방송 중에 고등학교 수학에 대해 들은 질문들 중 몇 개를 엮은 것입니다.

수학 공부의 방향성에 대해

알고리즘 문제는 여러분의 수학 실력을 시험합니다. 여러분은 문제의 해답을 출력하는 프로그램을 작성해야 합니다. 이 과정에서 추상화, 추론, 일반화와 같은 수학적 기술들이 필요합니다. 특정한 자료 구조나 알고리즘에 대한 기반 지식이 필요한 경우도 있습니다.

알고리즘 문제에서는 복잡한 논리적 구조를 구현하거나 계산 과정의 수행 시간을 줄이는 것이 주된 관심사입니다. 그 과정에서 효율적으로 자료를 관리하기 위한 자료 구조를 알아야 하고, 특정 상황에서 빠르게 계산 결과를 구하기 위한 알고리즘을 알아야 합니다. 이런 내용들은 고등학교 교과 과정이 추구하는 수학과 방향성이 많이 다른 편입니다.

수학 공부를 한 경험이 많다면 알고리즘을 공부할 때 큰 도움이 됩니다. 문제를 자신에게 익숙한 형태로 변형하고 적절한 해법을 찾아 적용하는 과정은 다른 수학 분야를 공부할 때와 크게 다르지 않습니다. 수학 문제 풀이에 익숙한 분들은 알고리즘 문제 풀이에 적응하고 발전하는 속도가 빠른 편입니다. 익숙하지 않다면 충분히 연습하면 곧 익숙하게 될 겁니다.

문과 출신은 알고리즘을 공부하는 데에 불리한가요?

코딩 테스트에 대한 강의를 하면서 정말 많이 들은 질문입니다.

이과 수학을 공부한 학생들이 문과 수학을 공부한 학생들보다 수학 과목을 공부한 시간이 많은 편이기 때문에 새로운 수학 개념들을 받아들이거나 문제를 분석하는 일을 더 능숙하게 하는 경향이 있습니다. 하지만 공부한 내용들을 기준으로 보면 불리한 점은 거의 없습니다.

대학수학능력시험의 선택 과목들을 기준으로 문과는 주로 확률과 통계를 선택하고, 이과는 주로 미적분 또는 기하를 선택합니다. 따라서 이과 수학의 범위는 문과 수학에서 미적분과 기하가 추가된 범위라고 볼 수 있습니다.

확률과 통계까지 공부했다면 고등학교 수학에서 문과를 선택해서 공부하지 못한 내용 때문에 알고리즘 공부에서 불리하게 될 일은 거의 없습니다. 다루는 내용을 보면 고등학교 교과서 중 '확률과 통계'가 알고리즘 문제 해결에 제일 도움이 많이 되는 편입니다.

기하학이나 미적분학은 주로 경시대회에서 어려운 문제로 드물게 출제됩니다. 문제 풀이를 위해 미적분학이나 기하학을 공부하게 될 때쯤에는 자신의 인생에서 알고리즘 문제 풀이를 공부한 시간이 고등학교 수학을 공부한 시간보다 길게 됩니다. 그쯤 되면 고등학교 수학을 덜 공부한 게 그렇게 아쉽지 않을 겁니다.

만약 수학이 약한 상태에서 코딩 테스트를 준비한다고 해도 너무 겁먹지 않아도 됩니다. 코딩 테스트를 준비하면서 공부하게 되는 내용은 대학교 2학년 전공과목 하나 정도라고 생각합니다. 시간을 내서 반복 연습하면 충분히 해낼 수 있습니다.

알고리즘 공부를 시작하려는데 고등학교 수학을 다시 공부해야 하나요?

고등학교 수학 전체를 공부하는 것은 추천하지 않습니다. 우선 알고리즘 공부를 시작하고 공부 과정에서 필요한 부분만 찾아 봐도 충분합니다. 예를 들어 최대공약수에 대한 문제를 풀게 되면 최대공약수에 대한 내용만 웹에서 검색해 공부하면 됩니다.

관련글 더보기

댓글 영역