• 리뷰
  • 리스트
  • 구매
C++로 쉽게 풀어쓴 자료구조
글쓴이
천인국,최영규 공저
출판사
생능출판사
출판일
2016년 8월 9일
  • 읽고있어요

  • 다 읽었어요

  • 읽고싶어요



책 소개

분야IT 모바일
자료구조를 구현하기 위해 이 책에서는 객체지향언어인 C++를 이용하였다. C++를 잘 모르면 이 책을 공부할 수 없을까? 물론 아니다. 이 책에서는 C++의 복잡한 문법이 아니라 자료구조에 초점을 맞추기 위해 기본적이고 실용적인 부분들만을 이용하여 설명하였다. 따라서 C 언어를 어느 정도 이해하고 있다면 C++를 잘 알지 못한다고 해서 너무 걱정할 필요는 없다. 각 장에서 자료구조들을 공부하면서 C++ 문법도 하나씩 알아나가자. 물론 C++를 이미 잘 알고 있으면 더욱 좋다. 이 책이 매우 좋은 C++ 복습서가 될 것이다.

C++는 다양한 기능들을 제공하는 복잡한 언어로 때로는 불필요해 보이는 기능들도 포함한다. 이 책에서는 C++의 문법적인 측면보다는 Java와 같은 대부분의 객체지향언어에서 공통적으로 사용하는 유용한 기법들을 위주로 예제 코드를 작성하였다. 따라서 이 책의 독자들이 책의 내용들을 Java와 같은 다른 객체지향언어에도 쉽게 적용할 수 있도록 노력하였다. 2장에서 이 책에서 주로 사용하는 C++ 문법과 그렇지 않은 문법을 구분하였다. 동적 바인딩이나 다중상속 등 다소 복잡한 문법은 이 책에서 사용하지 않는다. 이 책에서는 템플릿에 대해서도 다루지 않지만 C++에서 제공하는 표준 템플릿 라이브러리(STL)를 사용하는 방법들은 소개한다. STL은 프로그래밍에서 공통적으로 사용되는 자료구조와 알고리즘을 템플릿 기반으로 작성하여 제공하는데, STL에서 제공하는 자료구조들을 문제 해결에 적용해 보는 것은 현실적으로 매우 유용할 것으로 생각된다.

C 언어를 공부한 학생들도 포인터가 어려웠을 것이다. 이 책에서는 포인터와 연결 리스트를 5장에서 설명하고 있다. 포인터가 어렵지만 포인터의 개념이 명확하지 않더라도 구현할 수 있는 프로그램이 많다는 것을 이야기하고 싶다. 각 장의 학습 내용의 양을 가능하면 균일하게 배분하도록 구성하였다. 이를 위해 트리와 그래프는 각각 두 개의 장으로 나누었다. 또한 최대한 연관된 내용을 인접 장에 배치하였다. 이 책에서는 어떤 자료구조를 설명하기 위해 추상 자료형, UML 다이어그램 그리고 C++ 클래스를 이용한다. 먼저 추상 자료형으로 그 자료구조에서 필요로 하는 데이터(객체)와 연산들을 알아보고, 이것을 UML 다이어그램을 이용해 보다 구체적으로 설계한다. 이것은 추상 자료형보다는 구체화되었지만 아직 프로그래밍 언어에는 독립적인 상태이다. 마지막으로 UML 다이어그램을 바탕으로 해당 자료구조를 C++ 클래스로 구현한 예를 보이고, main() 함수에서 구현된 클래스를 사용해 문제를 해결하는 예를 제시한다.

가능한 한 완전한 프로그램을 제공하기 위해 노력하였다. 책에서 제시하고 있는 대부분의 코드들은 main 함수를 포함하여 완전한 코드이며 프로그램의 실제 실행 결과를 함께 제시하여 학습자들이 쉽게 소스의 동작을 확인하고 이해하며 활용할 수 있도록 하였다.

전체 리뷰 (0)
최근 작성 순
예스이십사 ㈜
사업자 정보