메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

자바스크립트 자료구조와 알고리즘 : 구조적이고 효율적인 자바스크립트 프로그래밍 기법 익히기

한빛미디어

번역서

절판

  • 저자 : 마이클 맥밀런
  • 번역 : 우정은
  • 출간 : 2014-08-28
  • 페이지 : 296 쪽
  • ISBN : 9788968481222
  • 물류코드 :2122
  • 초급 초중급 중급 중고급 고급
2.3점 (3명)
좋아요 : 31

강력해진 자바스크립트를 정말 제대로 즐겨라!

자바스크립트는 Node.js, 스파이더몽키 등의 플랫폼을 보유한 서버 사이드 컴퓨터 프로그래밍 언어로 점점 입지를 굳혔다. 요즘은 자바스크립트의 쓰임이 브라우저 외부 영역으로 확장되면서 자바스크립트 프로그래머는 C++, 자바 같은 일반 프로그래밍 언어에서 제공하는 다양한 도구(연결 리스트, 스택, 큐, 그래프, 데이터 정렬 알고리즘과 검색 알고리즘 등 전통적인 자료구조와 알고리즘 등)가 필요하게 되었다. 이 책은 다양한 자료구조와 알고리즘의 입출력 데이터를 설명할 뿐만 아니라 어디에 무엇이 가장 적합한 해법인지도 알려준다.

 


【대상 독자】
 · HTML, 자바스크립트, CSS, 자바 프로그래밍에 익숙한 웹 앱 개발자 
 · '해보면서 배우는' 사람들과 표준 개발 도구를 이용해서 새로운 기술과 기법을 적용하는 실제 예제를 보고 만들기를 선호하는 사람

 


【이 책에서 다루는 내용】
 · 배열과 리스트 : 가장 기본이 되는 자료구조
 · 스택과 큐 : 좀 더 복잡한 리스트형 자료구조
 · 연결 리스트 : 배열의 단점을 개선한 자료구조
 · 딕셔너리 : 키와 값 쌍으로 데이터 저장
 · 해싱 : 자료를 빠르게 삽입하거나 가져올 수 있는 자료구조
 · 집합 : 모든 데이터가 고유한 상황일 때 적합한 자료구조
 · 이진 트리 : 계층적으로 데이터 저장
 · 그래프와 그래프 알고리즘 : 네트워크 형태의 자료구조를 구성하는 데 적합
 · 알고리즘 : 데이터 정렬과 검색에 유용한 알고리즘
 · 고급 알고리즘 : 동적 프로그래밍과 탐욕 알고리즘

 


【부분별 요약】
 · 1장 - 자바스크립트 언어의 개요와 이 책에서 사용하는 자바스크립트의 기능을 설명한다. 또한 이 책 전체에서 사용하는 프로그래밍 형식도 설명한다.
 · 2장 - 컴퓨터 프로그래밍에서 가장 흔히 사용하는 자료구조며, 자바스크립트의 네이티브 형식인 배열을 설명한다.
 · 3장 - 첫 번째 자료구조인 리스트를 소개한다.
 · 4장 - 스택 자료구조를 설명한다. 스택은 컴파일러, 운영체제 구현에서 폭넓게 사용하는 자료구조다.
 · 5장 - 큐 자료구조를 설명한다. 큐는 은행이나 슈퍼에 줄을 선 사람들을 추상화한 자료구조다. 보통 차례로 데이터를 처리해야 하는 시뮬레이터 소프트웨어에서 큐를 광범위하게 사용한다.
 · 6장 - 연결 리스트를 설명한다. 연결 리스트는 리스트 자료구조를 변형시킨 형태로 각 요소가 별도의 객체며 각 객체끼리 서로 연결되어 있는 자료구조다. 연결 리스트는 데이터를 자주 삽입하거나 삭제하는 프로그램에 효율적인 자료구조다.
 · 7장 - 키와 값 쌍으로 데이터를 저장하는 자료구조인 딕셔너리를 만들고 사용하는 방법을 설명한다.
 · 8장 - 딕셔너리를 구현하는 방법 중 하나로 해시 테이블을 이용할 수 있다. 해시 테이블과 해시 알고리즘을 이용해 테이블에 데이터를 저장하는 방법을 설명한다.
 · 9장 - 세트 자료구조를 설명한다. 자료구조 책에서는 세트를 생략할 때가 종종 있다. 세트는 중복된 데이터를 포함하지 않는 상황에 적합한 자료구조다.
 · 10장 - 이진 트리와 이진 탐색 트리를 설명한다. 이전에도 설명했듯이 이진 탐색 트리는 정렬된 형태로 데이터를 저장해야 할 때 유용한 자료구조다.
 · 11장 - 그래프와 그래프 알고리즘을 설명한다. 그래프는 컴퓨터 네트워크의 노드나 지도의 도시 등과 같은 데이터를 표현하는 데 사용하는 자료구조다.
 · 12장 - 자료구조가 아닌 알고리즘을 중심으로 살펴본다. 특히 작은 데이터를 처리하는 데 적합하며 구현하기 쉬운 간단한 정렬 알고리즘부터 대용량 데이터 세트를 처리하는 데 적합하며 다소 복잡한 알고리즘까지 다양한 알고리즘을 설명한다.
 · 13장 - 순차 검색, 이진 검색 등 검색 관련 알고리즘을 설명한다.
 · 14장 - 동적 프로그래밍, 탐욕 알고리즘과 같은 고급 알고리즘을 설명한다. 기존의 알고리즘으로는 너무 느리거나 구현하기가 너무 어려울 때 14장에서 소개하는 고급 알고리즘을 사용할 수 있다. 동적 프로그래밍, 탐욕 알고리즘을 이용해 전통적인 문제를 해결하는 예제도 보여준다.

마이클 맥밀런 저자

마이클 맥밀런

아칸소 주 노스리틀록에 위치한 풀라스키 기술대학교(Pulaski Technical College)에서 컴퓨터 정보시스템을 가르치고 있으며, 아칸소 주립대학교에서 정보공학 부교수도 역임하고 있다. 학생들을 가르치기 전까지는 아칸소 주 어린이 병원(Arkansas Children's Hospital)에서 통계 컴퓨팅과 데이터 분석 관련 일을 했다.

우정은 역자

우정은

인하대학교 컴퓨터공학과를 졸업하고 LG전자, 썬마이크로시스템즈, 오라클 등에서 모바일 제품 관련 개발 일을 하다가 현재는 뉴질랜드 웰링턴에 있는 Flux Federation 사에서 모바일 앱 개발자로 새로운 인생을 즐기고 있다. 2010년 아이폰의 매력에 빠져들면서 번역 및 개발을 취미로 삼게 되었다. 2010년 이후로 꾸준히 서적을 번역한다.

 

CHAPTER 1 자바스크립트 프로그래밍 환경과 모델
    1.1 자바스크립트 환경
    1.2 자바스크립트 프로그래밍 기초
    1.3 객체와 객체지향 프로그래밍
    1.4 마치며


CHAPTER 2 배열
    2.1 자바스크립트 배열 정의
    2.2 배열 사용하기
    2.3 접근자 함수
    2.4 변형자 함수
    2.5 반복자 함수
    2.6 이차원 배열과 다차원 배열
    2.7 객체를 요소로 포함하는 배열
    2.8 객체에 포함된 배열
    2.9 연습문제


CHAPTER 3 리스트
    3.1 리스트 ADT
    3.2 List 클래스 구현
    3.3 리스트와 반복
    3.4 리스트 기반 애플리케이션
    3.5 연습문제


CHAPTER 4 스택
    4.1 스택 동작
    4.2 스택 구현
    4.3 Stack 클래스 이용하기
    4.4 연습문제


CHAPTER 5 큐
    5.1 큐 동작
    5.2 배열 기반의 Queue 클래스 구현
    5.3 Queue 클래스 사용하기: 스퀘어 댄스 파티에서 파트너 정하기
    5.4 큐로 데이터 정렬하기
    5.5 우선순위 큐
    5.6 연습문제


CHAPTER 6 연결 리스트
    6.1 배열의 단점
    6.2 연결 리스트 정의
    6.3 객체 기반 연결 리스트 설계
    6.4 양방향 연결 리스트
    6.5 순환형 연결 리스트
    6.6 기타 연결 리스트 함수
    6.7 연습문제


CHAPTER 7 딕셔너리
    7.1 Dictionary 클래스
    7.2 Dictionary 클래스의 부가 함수
    7.3 Dictionary 클래스에 정렬 기능 추가하기
    7.4 연습문제


CHAPTER 8 해싱
    8.1 해싱 개요
    8.2 해시 테이블 클래스
    8.3 충돌 처리
    8.4 연습문제


CHAPTER 9 집합
    9.1 집합의 핵심 정의, 동작, 속성
    9.2 Set 클래스 구현
    9.3 집합의 추가 동작
    9.4 연습문제


CHAPTER 10 이진 트리와 이진 검색 트리
    10.1 트리 정의
    10.2 이진 트리와 이진 검색 트리
    10.3 BST 검색
    10.4 BST의 노드 삭제하기
    10.5 발견 횟수 계산
    10.6 연습문제


CHAPTER 11 그래프와 그래프 알고리즘
    11.1 그래프 정의
    11.2 실생활에 사용되는 그래프
    11.3 Graph 클래스
    11.4 그래프 검색
    11.5 최단 경로 찾기
    11.6 위상 정렬
    11.7 연습문제


CHAPTER 12 정렬 알고리즘
    12.1 배열 테스트 베드
    12.2 기본 정렬 알고리즘
    12.3 고급 정렬 알고리즘
    12.4 연습문제


CHAPTER 13 검색 알고리즘
    13.1 순차 검색
    13.2 이진 검색
    13.3 텍스트 데이터 검색
    13.4 연습문제


CHAPTER 14 고급 알고리즘
    14.1 동적 프로그래밍
    14.2 탐욕 알고리즘
    14.3 연습문제

구조적이고 효율적인 이라는 제목을 떠나서 예제 코드하나하나가 붕괴수준이다.

 

중간중간 메서드는 빼먹기 일수이며 되지도 않는 코드를 코드랍시고 예제로 들고있다.

 

예제로드는 소스코드는 처음부터 자바스크립트로 작성하지 않았는지 다른 언어의  문법으로 나와있는게 많다.

 

코드는 실행해보고 예제로 들었는지..  소스파일을 받아서

 

실행해도 실행이 되지않는다.

 

for each (var w in this...)

 

이런 문법이 자바스크립트에 존재하는가??

 

원서를 먼저 읽은 경험자로써 원서 역시 문제가 많은책이다. 번역서 역시 원서를 그대로 직역한거에 틀림없다.

 

잘못된 소스, 잘못된 설명 뭐하나 바뀐게 없다.

 

절대사지마라. 

할수록 부족한 부분이 보이고
할수록 중요함을 느끼는

자료구조와 알고리즘..


그래서 자바스크립트로 배워보려 한다!




생각보다 얇은 책이다.
그리고 생각보다 심플하다.




하지만 익혀야 할 내용은 꾹꾹 잘도 담겨있다.

전체적으로 개념에 대해 간단히 설명한 후 예제로 진행이 되는 책이다.
그래서 그런지 개념에 지쳐 실습을 못하는 일은 줄어들 것 같다.


책장을 넘길 수록..




초심자에겐 비추!!

처음 자료구조와 알고리즘을 배웠을 때를 돌아보면,
한가지 개념에도

" 그럼 이런경우는?.... 되는구나! "
그럼 저런경우도 있지 않을까?.... 아! 이럴 땐 이렇게 하는 거구나!


여러 경우가 머리를 맴돌았던 것 같다.

그만큼 다양한 경우를 접해 볼 필요가 있는 초심자에게는
개념이 확실한 책을 추천하고 싶다.



책을 덮으면서..


말 그대로 예제 중심으로 빠르게 자료구조와 알고리즘을 훑을 수 있는 책이다.

다시 말해서, 사전처럼 필요할 때 가볍게 보기 좋은 책이다.
옵션 같은 책이랄까..



+ 예제를 눈으로 따라가며 개념을 코드화 시켜보는 점에선 좋았다.

+물론 전체 예제를 실습해보지는 않았지만, 일부 불친절한 설명들이 눈에 보였다.

+ 만약 이 책의 모든 코드를 실습하겠다는 마음가짐으로 본다면,
어느정도의 추가적인 학습이 필요할 것 같다..

자바스크립트를 공부하는 학부생으로써 자바스크립트에 대한 자료구조와 알고리즘에 대해 공부하려고 이 책을 읽게 되었는데요.
정말!

자료구조와 알고리즘 뿐만아니라 여러 배열! queue 스택 등등 많은 걸 배울 수 있는데요. 뭐랄까. 부분적으로 예제가 부족한 점, 배열이름이 어려운 점이 좀 아쉬웠어염

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
자바스크립트 자료구조와 알고리즘 : 구조적이고 효율적인 자바스크립트 프로그래밍 기법 익히기
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
자바스크립트 자료구조와 알고리즘 : 구조적이고 효율적인 자바스크립트 프로그래밍 기법 익히기
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
자바스크립트 자료구조와 알고리즘 : 구조적이고 효율적인 자바스크립트 프로그래밍 기법 익히기
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실