Ⅰ 문제 해결과 프로그래밍
SECTION 01 정보과학의 문제 해결
SECTION 02 계산 문제와 계산 복잡도 이론
1 계산 문제(computational problem
2 계산 복잡도 이론(computational complexity theory
SECTION 03 계산량의 실제적 이해
1 빅-오(Big O 표기법의 이해
2 빅-오 표기법의 종류SECTION 04 문제 해결의 절차
1 문제의 형태
2 문제 해결 단계SECTION 05 온라인 저지를 통한 알고리즘 검증
1 온라인 저지(online judge
2 코드업
3 코이스터디SECTION 06 문제 해결 프로그래밍과 다양한 대회
1 문제 해결 프로그래밍의 특징
2 문제 해결 프로그래밍을 다루는 다양한 대회Ⅱ 탐색 기반 설계SECTION 01 탐색SECTION 02 선형 구조의 탐색
1 순차 탐색
2 이분 탐색
문제 해결 실습해 보기
2-01 Linear Structure Search(tiny
2-02 윤년 판단하기
2-03 터널 통과하여 운전하기
2-04 홀수를 사랑한 세종이
2-05 홀수의 합 구하기
2-06 3·6·9 게임의 왕이 되기
2-07 두 수의 최대공약수 구하기
2-08 정수 뒤집기
2-09 무한히 많은 연산하기
2-10 가장 긴 막대의 길이 구하기
2-11 데이터 정렬하기(large
2-12 이분 탐색하기
2-13 완전제곱수 찾기
2-14 인구수로 광역시 만들기
2-15 정렬된 두 배열 합치기
2-16 lower bound
2-17 2차원 지그재그 채우기
2-18 2차원 빗금 채우기
2-19 2차원 달팽이 채우기
2-20 삼각 화단 만들기(smallSECTION 03 비선형 구조의 탐색
1 그래프의 구현
2 깊이 우선 탐색
3 너비 우선 탐색
문제 해결 실습해 보기
3-01 상태 정의와 탐색하기 ①
3-02 상태 정의와 탐색하기 ②
3-03 상태 정의와 탐색하기 ③
3-04 상태 정의와 탐색하기 ④
3-05
● 다양한 문제를 해결하기 위한 알고리즘 설계와 구현 방법을 학습합니다.이 책은 ‘문제 해결을 위해 알고리즘을 설계하고 적용하며, 평가하고 개선하는 과정’을 쉽게 학습할 수 있도록 50여 개의 다양한 예제 문제들과 해설을 제공하는 입문서입니다. 그러므로 본문에서는 여러 가지 알고리즘 설계 방법 중 가장 기본이 되는 탐색 기반 알고리즘 설계 방법에 대해 주로 다루고 있습니다.
● 온라인 저지 시스템을 이용해 프로그래밍 학습 흥미를 유발하고 역량을 강화합니다.프로그래밍 입문자들이 역량을 키우는 가장 좋은 방법은 다양한 문제들을 직접 해결해보는 경험을 하는 것입니다. 그리고 이 과정에서 자신이 작성한 프로그램이 정확하게 동작하는지 검증하는 과정은 매우 중요합니다. 이 책에 포함한 문제들은 온라인 저지인 코드업, 코이스터디에서 실시간으로 결과를 검증하고 확인할 수 있습니다.
● 파이썬과 C를 이용한 문제 해결 프로그래밍 학습의 길잡이가 되어드립니다.이 책은 C와 파이썬 코드를 모두 제공하고 있기 때문에 둘 중 한 가지 언어라도 알고 있다면 부담 없이 학습할 수 있습니다. 이 책을 학습하다 보면 여러분은 어느 순간 두 언어에 모두 익숙해질 수도 있으며, 특히 두 언어를 비교함으로써 특징과 장단점을 자연스럽게 알게 될 것입니다.
누구를 위한 책인가요?
● 프로그래밍에는 어느 정도 익숙하지만 문제 해결을 위한 알고리즘 설계 및 구현에 대해서는 처음 학습하는 사람
● SFPC 등과 같은 프로그래밍 대회에 도전하고 싶은 사람