추천 검색어

최근 검색어

도서 IT전문서/IT입문서 프로그래밍/오픈소스
자료 구조와 알고리즘으로 배우는 컴퓨터 과학 기초! 컴퓨터 사이언스 부트캠프 with 파이썬
정 가
24,000원
출 간
2018-02-14
지 은 이
양태환
I S B N
9791160504095
분 량
368쪽
난 이 도
입문
부 록
예제 완성 파일

컴퓨터 사이언스의 핵심만 간추려 쉽게 설명한다!

프로그래밍 문법만 배워서는 실무에 들어갔을 때 한계에 부딪힐 수 있습니다. 좋은 프로그램을 만들려면 결국 자료 구조와 알고리즘은 물론 컴퓨터의 동작 원리를 알아야 합니다. 이 책은 컴퓨터 사이언스의 핵심만 간추려 쉽게 설명합니다. 또한, 165개의 그림으로 개념을 시각화하고, 파이썬으로 주요 원리를 실습할 수 있게 안내합니다.

1장 변수
__1.1 메모리 미리 보기
____1.1.1 32비트와 64비트의 의미
____1.1.2 메모리에 우편번호를 매긴다
__1.2 변수의 의미
__1.3 파이썬에서의 변수: 이름과 값 객체
__1.4 마무리

2장 정수
__2.1 컴퓨터에서 수를 표현하는 방법
____2.1.1 10진수
____2.1.2 2진수
____2.1.3 16진수
__2.2 10진수를 2진수로
__2.3 2진수를 10진수로
__2.4 16진수를 2진수로
__2.5 코딩으로 확인하는 진수 변환
__2.6 양의 정수
__2.7 음의 정수
____2.7.1 보수의 개념
____2.7.2 2의 보수
____2.7.3 음수의 표현
____2.7.4 2의 보수로 표현하는 이유
__2.8 마무리

3장 실수
__3.1 실수 연산의 함정
__3.2 부동소수점
__3.3 단정도와 배정도
__3.4 1바이트 실수 자료형 설계하기
____3.4.1 10진수 실수를 2진수 실수로 바꾸기
____3.4.2 정규화
____3.4.3 메모리 구조
____3.4.4 1바이트 부동소수점의 표현 범위
____3.4.5 1바이트 부동소수점의 정밀도
__3.5 정밀도에 대한 고찰
____3.5.1 엡실론
____3.5.2 엡실론과 정밀도
__3.6 마무리

4장 문자와 문자열
__4.1 아스키 코드
__4.2 유니코드
__4.3 유니코드 인코딩 방식
____4.3.1 UTF-8
____4.3.2 UTF-16
____4.3.3 UTF-32
__4.4 파이썬 문자열의 특징
__4.5 마무리

5장 함수
__5.1 함수를 시작하기 전에
____5.1.1 자료 구조 미리 엿보기
____5.1.2 전역 변수와 지역 변수
__5.2 인자 전달 방식에 따른 분류
____5.2.1 값에 의한 전달
____5.2.2 참조에 의한 전달
____5.2.3 객체 참조에 의한 전달(파이썬) – 변경 불가능 객체를 전달할 때
____5.2.4 객체 참조에 의한 전달(파이썬) – 변경 가능 객체를 전달할 때
__5.3 람다 함수
__5.4 마무리

6장 객체 지향 프로그래밍
__6.1 프로그래밍 패러다임
__6.2 절차 지향 프로그래밍
__6.3 절차 지향으로 학급 성적 평가 프로그램 만들기
____6.3.1 openpyxl 모듈 설치하기
____6.3.2 openpyxl 모듈로 데이터 읽어 들이기
____6.3.3 평균·분산·표준편차를 함수로 만들기
____6.3.4 메인 프로그램 만들기
__6.4 객체 지향 프로그래밍
____6.4.1 캡슐화
____6.4.2 클래스를 사용해 객체 만들기
____6.4.3 파이썬의 클래스
____6.4.4 객체 지향으로 은행 입출금 프로그램 만들기
____6.4.5 정보 은닉
__6.5 객체 지향으로 다시 만드는 학급 성적 평가 프로그램
____6.5.1 Stat 클래스 만들기
____6.5.2 DataHandler 클래스 만들기
____6.5.3 메인 프로그램 만들기
__6.6 마무리

7장 클래스
__7.1 클래스 관계
____7.1.1 IS-A: 상속
____7.1.2 HAS-A: 합성 또는 통합
__7.2 메서드 오버라이딩과 다형성
_____7.2.1 메서드 오버라이딩
_____7.2.2 다형성
__7.3 클래스 설계 예제
__7.4 연산자 오버로딩
__7.5 마무리

8장 CPU
__8.1 트랜지스터와 논리 게이트
____8.1.1 전압, 전류, 저항
____8.1.2 논리 게이트
__8.2 조합 논리 회로와 가산기
_____8.2.1 CPU의 구성
_____8.2.2 가산기
__8.3 순차 논리 회로와 레지스터
__8.4 클록
__8.5 시스템 버스
____8.5.1 시스템 버스의 구성과 특징
__8.6 인스트럭션 세트
____8.6.1 명령어 종류
____8.6.2 덧셈과 뺄셈 명령어
____8.6.3 곱셈과 나눗셈 명령어
____8.6.4 메모리 접근 명령어
____8.6.5 소스 코드에서 인스트럭션으로
__8.7 마무리

9장 메모리
__9.1 메모리 저장 방식
__9.2 메모리 계층
__9.3 지역성과 캐시 히트
__9.4 가상 주소 공간
____9.4.1 코드 세그먼트
____9.4.2 데이터 세그먼트
____9.4.3 스택 세그먼트
____9.4.4 힙 세그먼트
__9.5 스택 프레임
____9.5.1 스택 프레임 할당
____9.5.2 스택 프레임 해제
__9.6 가상 메모리와 페이징
____9.6.1 가상 메모리
____9.6.2 MMU
____9.6.3 페이징
____9.6.4 페이지 프레임
____9.6.5 페이지 테이블
____9.6.6 요구 페이징
____9.6.7 페이지 폴트
____9.6.8 변환 색인 버퍼
__9.7 마무리

10장 프로세스와 스레드
__10.1 프로세스
____10.1.1 프로세스 상태
____10.1.2 스케줄링
____10.1.3 컨텍스트 스위칭
__10.2 스레드
____10.2.1 멀티프로세스와 멀티스레드
____10.2,2 멀티스레딩 구현
____10.2.3 경쟁 조건
____10.2.4 상호 배제
__10.3 마무리

11장 프로그래밍 언어
__11.1 컴파일러 언어와 인터프리터 언어
____11.1.1 C 언어: 컴파일러 언어 분석
____11.1.2 파이썬: 인터프리터 언어 분석
__11.2 파이썬: 소스 코드부터 실행까지
____11.2.1 컴파일러
____11.2,2 추상 구문 트리
____11.2.3 심벌 테이블
____11.2.4 바이트 코드와 PVM
__11.3 마무리

12장 자료 구조 ①
__12.1 자료 구조
____12.1.1 세 가지만 알면 자료 구조 끝
____12.1.2 추상 자료형
__12.2 연결 리스트
____12.2.1 노드
____12.2.2 연결 리스트 구현
__12.3 스택
____12.3.1 스택의 동작
____12.3.2 스택 구현
__12.4 큐
____12.4.1 큐의 동작
____12.4.2 큐 구현
__12.5 마무리

13장 자료 구조 ②
__13.1 재귀 함수
____13.1.1 팩토리얼
____13.1.2 피보나치 수
__13.2 트리
____13.2.1 사이클
____13.2.2 이진 트리
____13.2.3 이진 트리의 종류
__13.3 이진 트리 구현
____13.3.1 트리 노드 구현
____13.3.2 노드 관련 메서드 구현
____13.3.3 서브 트리 관련 메서드 구현
____13.3.4 이진 트리 구성하기
____13.3.5 트리의 순회
__13.4 마무리

14장 이진 탐색 트리
__14.1 이진 탐색 트리의 특징
__14.2 이진 탐색 트리의 구현
____14.2.1 이진 탐색 트리의 추상 자료형
____14.2.2 이진 트리 관련 메서드
____14.2.3 insert( ) 메서드
____14.2.4 search( ) 메서드
____14.2.5 remove( ) 메서드
____14.2.6 테스트 코드
__14.3 마무리

15장 알고리즘
__15.1 알고리즘 성능 분석
__15.2 거품 정렬
__15.3 퀵 정렬
__15.4 마무리

부록: 파이썬 기초
1. 파이썬의 자료 구조
2. 연산자
3. 제어문
4. 반복문
ㆍ지은이 양태환
지은이 소개
수의대를 다니던 도중 '적정기술'에 매료되어 공학을 공부했습니다. 그때부터 시작한 코딩에 흠뻑 빠져 개발자가 되었습니다. 아직 모르는 게 많아 항상 즐겁게 공부합니다. 최근에는 어떻게 하면 더 많은 사람들이프로그래밍을 재미있게 배울 수 있을지 고민하는 중입니다.

필요한 자료를 선택하세요.

추천도서