이 책은 현실 세계의 다양한 문제를 예시로 제시하고 문제를 해결하는 과정을 수학적이고 논리적으로 설명한다. 문제를 정의하는 데서 출발하여 세련되고 효율적인 알고리즘을 도출하기까지의 과정을 자세히 다룬다. 또한 알고리즘을 명확하게 이해하고 사용하는 데 필요한 자료 구조와 컴퓨터 작동 원리 같은 기초적인 내용도 다루고 있어서 소프트웨어 개발에 필요한 기초적 개념과 원리를 이해하고 응용의 폭을 넓히는 데 도움이 될 것이다.
실용적인 알고리즘의 구현 방법을 배워본다.
이 책은 컴퓨터과학의 문제 해결 방법인 알고리즘이 현실 세계 문제들을 어떤 방식으로 해결하는지 보여준다. 금융 거래, 웹 페이지에서 중요도 결정, 선거 문제에서 투표 우열 계산, 스트리밍 데이터 검색 등 현실 세계에서 일어나는 일들을 예로 들어 알고리즘이 작동하는 방식과 그것을 활용하는 방식을 알려준다. 이 책을 통해 경제와 경영, 생활과 사회학, 수학과 통계 등 다양한 분야에서 활용할 수 있는 알고리즘의 구현 방법을 살펴볼 수 있다.
직관적이고 이해하기 쉽게 의사 코드로 설명한다.
의사 코드는 프로그래밍 언어가 가진 약점을 살짝 피해 갈 수 있어서 실제 프로그래밍 코드보다 더 쉽게 이해할 수 있고 추론하기도 때로는 더 쉽다. 또한, 개발할 때 구문에 주의를 기울여야 하는 부분에서 실제 코드보다 의사 코드로 기술하는 것이 알고리즘을 구현하기가 더 쉽다. 그래서 이 책에서는 특정 프로그래밍 언어가 아닌 의사 코드로 알고리즘을 설명한다.