알고리즘이란 '문제를 해결하는 절차'입니다
-알고리즘은 입력, 출력, 유한성, 명백성, 효과성을 만족해야합니다.
-알고리즘은 분석을 통해 좋고 나쁨을 평가할 수 있습니다.
-알고리즘은 논리이며 수학이고 실질적인 개발에 적용되는 기초적인 아이디어입니다.
알고리즘은 구체적으로 어디에 쓰일까?
알고리즘은 '개발'의 전체 과정에 사용됩니다.
-실제 프로그램을 개발할 때 효율적인 알고리즘을 적용함으로써 원하는 결과를 도출해야 합니다.
-스케줄 관리 프로그램 : 달력에서 특정한 달에 해당하는 일 수는 어떻게 구할까?
-내비게이션 프로그램 : 여러 개의 중간 지점을 거쳐서 특정 지점으로 갈 때 가장 빠른 길은 무엇일까?
-게시판 프로그램 : 한 페이지당 게시글을 10개씩 출력해야 하는데 어떻게 출력할까?
알고리즘을 공부하는 이유
알고리즘은 프로그래머에게 피할 수 없는 숙명입니다.
-세계적으로 알고리즘과 관련한 대회 및 기관은 정말 수없이 많습니다. 대표적으로 ACM-ICPC, 구글 코드잼, 코드포스, 정보올림피아드 등이 존재합니다.
-아이러니하게도 일반적인 개발을 할 때는 높은 난이도의 알고리즘은 거의 사용되지 않습니다.
-그럼에도 불구하고 기업 채용이나 각종 대회에서는 문제 해결 능력을 보기 위해서 어려운 알고리즘 문제를 제시합니다.
-알고리즘 문제는 종합적인 개발 역량을 평가하기에 좋은 용도이기 때문입니다.
출처
blog.naver.com/ndb796/221226794899
728x90
반응형
'포트폴리오 > 알고리즘(나동빈 T)' 카테고리의 다른 글
나동빈 실전 알고리즘 5강 - 퀵정렬(Quick Sort) (0) | 2021.02.05 |
---|---|
나동빈 실전 알고리즘 4강 - 삽입 정렬(Insertion Sort) (0) | 2021.02.04 |
나동빈 실전 알고리즘 3강 - 버블 정렬(Bubble Sort) (0) | 2021.02.04 |
나동빈 실전 알고리즘 2강 - 선택 정렬(Selection Sort) (0) | 2021.02.02 |