알고리즘 문제해결기법 입문 - goormEDU

알고리즘 문제해결기법 입문

알고리즘을 기반으로 프로그래밍 문제해결능력을 기르기 위한 기반을 다지는 입문 코스입니다

Lecture Introduction
Difficulty
Normal
Category
Programming - Algorithm
Tag
프로그래밍 기본, 알고리즘, 자료구조, 프로그래밍, 취업준비, 대회준비, 코딩, 코딩테스트, 개발자취업
Certificate
You can issue a certificate of completion
Target Audience
- 프로그래밍 문법을 공부했지만 여전히 구현이 어려우신 분
- 알고리즘, 자료구조 등 관련 과목을 수강하는 학생
- 기업 사내 역량평가 혹은 입사 코딩테스트를 준비하는 분
- 프로그래밍 기술 면접을 준비하는 분
- 정보올림피아드, ICPC, TopCoder 등의 알고리즘 대회를 대비하고 싶은 분

구름EDU가 처음이라면 누구나 할인!

WELCOMEGOORMEDU 코드 입력하고 
5천원 추가 할인 혜택까지 누리세요!


강좌 '결제하기' 클릭 후 코드를 입력하면 완료 😎 










알고리즘 너무 어렵다!

저 진짜 알고리즘 왠만한 거 다 찾아봤는데,
해도 해도 모르겠어요...

저는 가망이 없는 건가요?



여러분 잘못이 아니에요


문제 해결?

개발자에게 문제
요구사항과 제한 사항이 명확한 일(Job)을 뜻합니다

즉, 우리가 소프트웨어적인 방법으로
해결해야 할 대상이죠

때문에 우리가 말하는 문제 해결(Problem Solving)
1. 언어로 표현된 요구사항을
 이산적 문제로 추상화하고
2. 주어진 조건과 제약사항에 맞는 알고리즘을 설계하고
3. 프로그래밍 언어로 구현하고 디버깅하는
일련의 과정
을 말합니다


말만 들어도 복잡하죠?

심지어 이를 위해서 우리는 종합적인 지식이 필요해요!

소프트웨어 지식, 프로그래밍 언어,
이산수학, 알고리즘, 자료구조, 분석 능력까지...

이렇게 많은 능력이 필요하니
당연히 어려울 수 밖에 없습니다.


너무 딱딱하고 어려운 기존의 컨텐츠들

많은 책과 강의는 딱딱한 이론 위주로 설명되어 있습니다
그러니 실제로 코딩해볼 엄두조차 나지 않죠!

실제로 서점에서 볼 수 있는 여러 알고리즘 서적엔
이해하기에는 어려운 것들이 많습니다!

나는 프로그래밍 조차 어려운데ㅠㅠ

복잡한 알고리즘부터 가르치니
학습 진도가 그대로 인 것은 당연합니다




기본부터 차근차근 훈련해볼까요?

내 생각을 코드로 옮기는 연습

당장 코딩도 어려운데 복잡한 알고리즘이 이해될까요?

기초 문법 위주로 가장 기본이 되는 로직부터 구현하며
여러분이 생각한 내용을 코드로 옮겨보세요!

내가 생각한대로 프로그래밍할 수 있는 연습을 하세요!


기본 패턴부터 고급 알고리즘까지

유명한 알고리즘을 암기하는데에 목매지 않아도 괜찮아요

복잡한 알고리즘들을 구성하는 기본적인 패턴부터 훈련하면
어려웠던 알고리즘이 훨씬 쉽게 다가옵니다!

쉬운 패턴부터 직접 프로그래밍하며 익혀보세요
어려울것 같았던 알고리즘도 쉽게 패턴화할 수 있어요!





왜 이 강좌냐구요?

여러분을 이해하는 강사

저는 10년 가까이 알고리즘을 공부하고 파헤쳐 왔습니다

많은 수업을 진행하고, 실제로 문제 출제도 해보면서
알고리즘을 공부하는 사람들이 어느 포인트에서
어려워하고 포기하는지 잘 알고 있습니다

문법만 알아도 이해할 수 있도록
쉽고 친절하게
 설명합니다

실제로 자주 활용하고, 많이 출제되는
유용한 문제만 직접 골랐습니다

배운 내용을 곧바로 프로그래밍해보며
알고리즘 지식을 내 것으로 만들어보세요!


편리한 온라인 실습 툴

내용 뿐만 아니라 환경도 고려했습니다

구름EDU에서는 학습, 코딩, 채점 모두 가능합니다!

컴퓨터만 있다면 언제 어디서나 실습하고
코드를 저장할 수 있습니다.


양질의 컨텐츠

쉬운 구현 연습부터, 복잡한 알고리즘 응용까지
모두 배울 수 있습니다!

수 천 문제를 풀어본 강사가 엄선한 문제들을
강의와 함께 풀어보세요!

여러분이 좀 더 빠르게 좋은 프로그래밍 습관을
잡을 수 있도록 
뼈대 코드와 모법 답안도 함께 제공드립니다

당연히 친절한 문의 게시판도 잊지마세요!




수강 전 참고해주세요

대상 프로그래밍 언어

기본 예시 코드는 Java/C++/Python3 기준이지만,
대부분 기초 문법과 그림/도표로 설명하기에
해당 언어를 몰라도 충분히 완강하실 수 있습니다!

심지어 채점과 실습은 대부분의 프로그래밍 언어
진행할 수 있다는 점 참고해주세요


수업을 위해 알아야 할 내용

다음의 두 가지만 준비되어 있다면
원활하게 수업을 수강할 수 있어요!

1. 하나 이상 언어에 대한 기초적인 문법
(Java, C++, Python 권장)

2. 필요한 지식을 구글에 검색할 수 있는 능력


소프트웨어 개발 경력

실습할 수 있는 컴퓨터 혹은 태블릿PC









알고리즘 프로페셔널

김동이


소프트웨어 개발 경력

現 Cognex Corp. Software Engineer
前 SUALAB Software Engineer


알고리즘 강의 경력

다수의 문제 출제 경력 (기업 코딩테스트, 공식 대회 등)
다수의 알고리즘 강의 경력 (패스트캠퍼스, 멀티캠퍼스 등)


알고리즘 관련 수상 이력

전국 대학생 프로그래밍 경시대회 은상(2015)
ACM-ICPC 한국 리저널 11등 (2015)
전국 대학생 프로그래밍 경시대회 동상(2013)
ACM-ICPC 한국 리저널 13등 (2013)
ACM-ICPC 한국 리저널 17등(2012)
이데일리 코딩챌린지 5등
팁스타운배 코드챌린지 5등

...

그 외 알고리즘 관련 대회 출전 및 입상 경험 다수


 

all Icon made by Freepik from www.flaticon.com

Preview
Expand All
  • 04
    2. 알고리즘의 연산량
  • 챕터2 강의노트 (임시)
    실제 연산량 줄이기
    문제2A-도토리 키재기
    문제2B-오름차순인가?
    문제2C-다양성
Curriculum
Expand All
  • 01
    About Course
  • 공부하는 방법
    문제 모범 답안
    알고리즘이란
    알고리즘이 어려운 이유
  • 02
    0. Introduction & Tutorial
  • 알고리즘과 자료구조
    문제 해결하기
    약속하기
    문제의 구성
    입력과 출력
    문제0A-출력해보기
    문제0B-입력받아보기
    문제0C-반복해보기
    문제0D-저장해보기
    문제0E-테스트케이스
  • 03
    1. 코드와 친해지기
  • 챕터1 강의노트 (임시)
    코드와 친해지기
    반복문과 친해지기
    문제1A-최대값 함수
    문제1B-배열의 최대값
    문제1C-카운팅하기
    문제1D-합 구하기1
    문제1E-합 구하기2
    문제1F-탐색하기1
    문제1G-탐색하기2
    문제1H-탐색하기3
    문제1I-선택정렬 구현하기
    문제1J-합 구하기3
    단원 되짚어보기 & 해설
  • 04
    2. 알고리즘의 연산량
  • 연산량과 시간복잡도
    챕터2 강의노트 (임시)
    실제 연산량 줄이기
    문제2A-도토리 키재기
    문제2B-오름차순인가?
    문제2C-다양성
    문제2D-문자열의 비교
    문제2E-소수의 판별
    문제2F-데스티니
    문제2G-버블정렬 구현하기
    문제2H-픽셀 수 세기
    문제2I-정주행
    문제2J-승부 조작
    단원 되짚어보기
  • 05
    3. 공간 활용하기
  • 배열의 특징
    챕터3 강의노트(임시)
    배열 활용하기
    문제3A-전화번호
    문제3B-페인트
    문제3C-응모
    문제3D-피보나치 나머지
    문제3E-색종이
    문제3F-과유불급
    문제3G-팬미팅
    문제3H-두 카드
    문제3I-세 카드
    문제3J-네 카드
  • 06
    4. 자주 사용되는 수학 알고리즘
  • 챕터4 강의노트(임시)
    문제4A-스도쿠 보드
    문제4B-Probing
    문제4C-최대공약수와 최소공배수
    문제4D-수열의 순환
    문제4E-소인수 분해
    문제4F-소수 세기
    문제4G-배열 흔들기
    문제4H-카잉 달력
    문제4I-골드바흐의 추측
    문제4J-공약수 게임
  • 07
    5. 구현 훈련하기
  • 문제5A-놀이 공원
    문제5B-거대 놀이 공원
    문제5C-레이저 타워
    문제5D-레이저 타워 건설하기
    문제5E-숫자 채우기1
    문제5F-숫자 채우기2
    문제5G-숫자 채우기3
    문제5H-두 직사각형
    문제5I-두 선분
    문제5J-로봇 청소기
    문제5K-고성능 로봇 청소기
    문제5L-NBA농구
    문제5M-와일드 카드
    문제5N-패턴 검사
    문제5O-단어 퍼즐
    문제5P-이름 짓기
  • 08
    6. 자료구조 활용하기
  • 챕터6 강의노트 (임시)
    문제6A-괄호 문자열
    문제6B-탑
    문제6C-히스토그램
    문제6D-조세퍼스 문제
    문제6E-폭탄 제거
    문제6F-폭탄 제거 순서 정하기
    문제6G-불안정 지역
    문제6H-중복 제거하기
    문제6I-정사각형
    문제6J-빈도수 세기
    문제6K-시장 추천하기
    문제6L-배열 합치기
    문제6M-이중 우선순위 큐
    문제6N-중앙값 큐
    문제6O-피자 하와이
  • 09
    7. 재귀 함수와 분할 정복
  • 챕터7 강의노트(임시)
    [문제07A] 모든 조합 출력하기
    [문제07B] 하노이의 탑
    [문제07C] 단지 번호 붙이기
    [문제07D] Merge Sort 구현하기
    [문제07E] Quick Sort 구현하기
    [문제07F] 히스토그램
    [문제07G] Counting Inversion Pairs
    [문제07H] Finding Closet Pair
  • 10
    8. DFS/BFS
  • 챕터8 강의노트(임시)
    [문제08A] - 그래프의 탐색 1
    [문제08B] - 그래프의 탐색 2
    [문제08C] - 그래프의 최장 경로
    [문제08D] - 그래프의 최단 경로
    [문제08E] - 바이러스
    [문제08F] - 미로 탈출하기
    [문제08G] - 토마토
    [문제08H] - 소수 경로
    [문제08I] - 스도쿠 보드 채우기
    [문제08J] - N Queen
  • 11
    9. 그래프 알고리즘
  • 챕터9 강의노트(임시)
    [문제09A] 해밀턴 경로
    [문제09B] 외판원 순회 문제
    [문제09C] 한 붓 그리기
    [문제09D] 그래프의 연결성
    [문제09E] 최소 신장 트리 1
    [문제09F] 최소 신장 트리 2
    [문제09G] 그래프의 최단 거리
    [문제09H] 그래프의 최단 거리 2
  • 12
    10. 동적 계획법
  • [문제10A] 가장 긴 부분 증가수열 (LIS)
    챕터10 강의노트(임시)
    [문제10B] 팬스 수리하기
    [문제10C] 아르바이트
    [문제10D] 회선 설치하기
    [문제10E] 2차원 누적합
    [문제10F] 퀼팅(Quilting)
    [문제10G] 가장 긴 공통 부분 문자열 (LCS)
    [문제10H] Ah-choo!
    [문제10I] 곱하기는 귀찮아
    [문제10J] 올바른 괄호 문자열
    [문제10K] 배낭 문제 (Knapsack Problem)
    [문제10L] 7 Segment Display
  • 13
    11. 문제를 푸는 다른 방법
  • 챕터11 강의노트(임시)
    [문제11A] 지하철을 빠르게 빠르게
    [문제11B] 감시 로봇
    [문제11C] 복도 통과하기
    [문제11D] Selling Cells
    [문제11E] 인구조사
    [문제11F] 그래프 최소 분할
  • 14
    12. 문자열 알고리즘
  • 챕터12 강의노트 (임시)
    [문제12A] Rabin Karp
    [문제12B] KMP
    [문제12C] 실패함수 계산하기
    [문제12F] Trie 구현하기
  • 15
    Appendix - Java
  • 16
    Appendix - C++
Instructor Introduction
user
코딩몬스터Teacher

Lecture Reviews
  • No reviews have been written.

200,000

100,000
(50%)


Average Rating
4.5
Difficulty
Normal
Lecture Period
Unlimited