1. 알고리즘이란 ?
알고리즘(algorithm)은 주어진 문제를 논리적으로 해결하기 위해 필요한 절차, 방법, 명령어들을 모아놓은 것이다.
넓게는 사람 손으로 해결하는 것, 컴퓨터로 해결하는 것, 수학적인 것, 비수학적인 것을 모두 포함한다..
출처 : https://terms.naver.com/entry.naver?docId=3597402&cid=58598&categoryId=59316
2. 알고리즘 문제란 ?
알고리즘 문제란 문제가 주어지면 사용자가 그 문제의 알고리즘을 찾아서 해답을 도출하도록 설계된 문제이다.
즉 문제의 난이도도 천차만별이다. 또한 문제를 보고 머릿속, 필기 등 다양한 방법으로 문제의 알고리즘을 찾고
그 해답을 수 십 가지 프로그래밍 언어 중 하나를 선택하여 해답을 작성한다.
그렇기에 수학이나 논리적 사고 지식과 더불어 프로그래밍 언어를 사용할 수 있어야 문제를 풀 수 있다.
3. 알고리즘 문제를 풀어야 하는 이유
1. 알고리즘 문제를 풀 수록 문제 해결 능력, 복잡한 구조를 간결하고 정확하게 코딩하는 능력,
자신의 코드가 틀렸을 때 어디서 문제가 생겼는지 찾는 디버깅 능력과 코드의 효율을 높여 속도를 개선하는 능력 등
쉽게 말해 개발자로서 베이스가 탄탄해진다.
2. 입사나 전과, 동아리 면접 등 다양한 코딩 테스트에서 유리하다.
-> 알고리즘 문제는 코딩 테스트에서 보통 많이 나온다. 그렇기에 평소 논리적 사고력을 길러 놓으면 도움이 된다.
4. 알고리즘 문제의 예시
[알고리즘] 백준 25165 파이썬 - 영리한 아리의 포탈 타기
문제 아리가 보스 몬스터를 잡으러 가려면 광야에 위치한 포탈을 타야만 한다. 하지만 광야에는 아리가 포탈을 타러 가는 것을 방해하려는 보스 몬스터의 오른팔인 부하 몬스터 한 마리도 함께
maeseok.tistory.com
5. 마무리하며
개발자로서의 기술 개발을 위해서는 알고리즘보다는 프로젝트나 토이 프로젝트가 더욱 효과적이다.
그렇기에 알고리즘 문제를 주로 하는 것 보다는 하루 1개 정도로 꾸준히 하여 논리적 사고력을 유지하는 것이 좋다.
애초에 프로그래밍 언어라는 장벽 때문에 일반인들이 알고리즘 문제를 접하기는 어렵다.
하지만 취미로 프로그래밍 언어를 배우거나, 배우고 싶으신 분들은 꼭 알고리즘 문제를 풀어봤으면 좋겠다.
개발이라는 일 이외에도 수학적 사고 능력을 강화하는 것은 어디에서나 도움이 될 수 있기 때문이다.
+ 알고리즘 문제를 풀 수 있는 곳
Baekjoon Online Judge
Baekjoon Online Judge 프로그래밍 문제를 풀고 온라인으로 채점받을 수 있는 곳입니다.
www.acmicpc.net
CodeUp
☆ 파이썬 다운로드 : 파이썬3 ☆ 무료 C언어 IDE : Code::blocks DEV C++ ☆ 추천 온라인 IDE : C C++11 Python3 Java ☆ 채점 가능 언어 : C, C++, JAVA, Python 3.5 ★ C++로 제출시 void main()을 사용하면
www.codeup.kr
구름LEVEL
코딩테스트에서 가장 높은 비중을 차지하는 알고리즘 문제를 제작하고 풀이할 수 있는 온라인 저지 서비스입니다. 기업에서 선호하는 C, C++, 파이썬(Python), 자바(Java), 자바스크립트(Javascript) 이
level.goorm.io
코딩테스트 연습 | 프로그래머스 스쿨
개발자 취업의 필수 관문 코딩테스트를 철저하게 연습하고 대비할 수 있는 문제를 총망라! 프로그래머스에서 선발한 문제로 유형을 파악하고 실력을 업그레이드해 보세요!
school.programmers.co.kr
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
'IT지식 > 나머지' 카테고리의 다른 글
[IT지식] 자료구조와 알고리즘 공부를 해야하는 이유? (6) | 2022.10.24 |
---|---|
알고리즘 공부 게임처럼 하기 (Feat 백준, solved.ac) (7) | 2022.10.16 |
[IT지식]정규 표현식 - 기초 및 사용 예시 (3) | 2022.10.13 |
[취업정보] LinkedIn으로 취업하기! (Feat. 링크드인) (2) | 2022.10.13 |
[Slack] 슬랙으로 메시지 보내기 (Feat. 초기 설정 및 사용법 정리) (3) | 2022.10.12 |