TA的每日心情 | 开心 2018-4-8 22:14 |
---|
签到天数: 1 天 [LV.1]初学乍练
普通会员

- 积分
- 5517
|
java自学网(www.javazx.com)-java论坛,java电子书推荐:《 数据结构--C++实现(第二版)》
3 N T2 R& R0 l& }8 |, s, p2 N; Rjava电子书推荐理由:数据结构是计算机专业教学计划中的一门核心课程,也是信息管理、通信电子、自动控制等与计算机技术关系密切的专业的一门基础课程。从事与计算机科学与技术相关的工作,尤其是计算机应用领域的开发和研制工作,必须具备坚实的数据结构的基础。本书对C++语言作了简单介绍,介绍了线性表、栈、队列、数组、广义表、树、图等数据结构,并介绍了查找和排序的方法。全书用C++语言描述并实现了所有数据结构的类和程序,并附有习题,便于教学。
& Q% r) D! K6 O5 P8 L% q `2 ^5 n$ @; m7 P4 i! k6 W" A. H' L
作者:缪淮扣 沈俊 顾训穰 _, N1 D3 w6 w6 T1 t3 N; `
出版社:科学出版社# x( W& F4 e1 G& f$ v* h- ]
出版时间:2014-06-01 1 [/ w2 x2 c. X" l; c! f
书籍价格:33.00元7 w( e3 {+ \9 U' z$ Q9 }; r3 W
4 J+ a) z# N. u' H1 X
( ?) P: x: s8 x( y1 L6 V. S" g3 z! Q4 T7 v' w6 F
+ v% X- o( m F q$ @+ ~java电子书目录:% f+ C& Y' @; D* D
第一章 绪论 0 H/ I+ [0 J' n
1.1 (算法+数据结构 =程序 + K* Y0 E8 M3 }3 h' i
1.2 数据结构的基本概念 ! Y7 ~8 W6 M/ I8 R' [
1.2.1 两个简单的数据结构实例
m+ h& _5 g8 d' u! w1.2.2 数据结构的定义
0 K0 V n, x5 Q* `1.3 算法性能与复杂度 % w- d% P3 p! D9 ?9 W! C2 A
1.3.1 算法的定义 ( s& j7 Q8 f% }# Y9 x% f+ t" I
1.3.2 算法的性能标准
9 Y7 ]% r4 w) L. E- C" |0 }" J1.3.3 算法复杂度 # ?. z5 }6 y, @1 I5 Q, Z9 r0 U, [
习题一
, `( U0 y! `3 Q7 y5 a* ?: w& q第二章 C++程序设计语言简介
4 b' c# D- x) L" R( d# V2.1 C++语言基础 9 Y. T% r& h! O- j' v3 d
2.1.1 程序结构 " ~: @8 j' q! S9 D* D5 [& \* B
2.1.2 数据声明和作用域 / {( [" |6 x0 P3 N( l( G
2.1.3 输入/输出 4 X+ t+ B$ y' M1 s
2.1.4 函数
* N1 D/ r5 F( }* P( a2.1.5 参数传递 / O9 ^) }- V5 Z1 v) ?3 x, p
2.1.6 函数名重载 / F6 Q/ U$ y; g6 |) v% l
2.1.7 动态内存分配
% e6 i4 C0 ], G" Y& n1 w2 ]4 N2.1.8 结构与联合 * o" Q. ]6 g6 c3 s6 [
2.2 类与对象的基本概念
$ _ F$ ]9 |: j3 N2.2.1 类与对象
8 y$ V2 O! U! f- T# f2.2.2 消息与合作
* T0 o/ W; Q+ z, D1 v2.2.3 多态性 : Q1 }' X1 u: M9 @. D7 ]2 y" q
2.3 面向对象的程序设计方法 5 Y1 I* z; A2 u# `- \
2.4 C++类与对象 * ?% o f9 X- L) y- w& T U
2.5 构造函数和析构函数
2 S/ y# L, X- t- C2.6 工具函数
1 j- I, `9 N# a2.7 继承
. U* @+ ^( j" K4 ]7 ?2 l2.8 this指针的使用 ! c- k0 w* H8 V) O1 J4 V% f9 b! U
2.9 虚函数、多态性以及动态联编
8 B; }% k* ~3 |* p2.9.1 虚函数和多态性
% A7 Q/ K; y& l5 M2.9.2 动态联编 8 B X3 A5 y. z- @$ K+ ?% D% s
2.10 类模板
! D$ m% }" u \% O. K- u9 I. B习题二 7 }9 l" B$ i' y# a
第三章 线性表
2 A/ z3 p' h- p) \' h3 x" Z* T3.1 线性表的定义
% N$ c8 u3 O- P U3.2 线性表的顺序表示 & O. V3 t- A& d- s$ J
3.2.1 顺序表的类模板定义
3 r! U5 Q% X6 W9 {9 L$ Z3.2.2 顺序表相关算法的复杂度分析 ' Q. S% }; D4 q
3.3 线性表的链表表示 ) C* I4 C* u7 g% Q+ s' m. n" W U! O- f. M
3.3.1 单链表
; u7 k( f9 |5 T3.3.2 双向循环链表
6 ~( N1 o) |& u+ @1 j/ E2 S: V0 }3.3.3 静态链表 g) F8 z: c3 c' J7 t
3.4 线性表的应用
8 l( q" g8 Y- B5 C+ D! {+ v( C3.4.1 集合的表示和相关运算的实现 + t8 {+ Z g v
3.4.2 一元多项式表示和相关运算的实现
+ q. K8 M8 \# M' H, U: y: H' I习题三 ( c, V( @3 \- l4 I- @
第四章 栈、队列和递归
0 K, }* Z7 A. p+ g3 e8 W4.1 栈 7 R% p# I; z) A( \' k9 k; {8 n/ J
4.1.1 顺序栈 : v# q) ]8 y& Q/ y. M& c4 @
4.1.2 链式栈 ' c: [% ~3 o1 |' t8 n
4.1.3 栈的应用—— 表达式求值 0 j- {, A6 U5 ` s* E
4.2 队列 - D! Z& L7 k6 |3 X
4.2.1 循环队列
) p& [2 t. ], d: d p2 d$ I+ U4.2.2 链式队列 ( T# @* M# V4 F, ]( B) k
4.2.3 队列的应用—— 车厢调度
5 p' c& z( x, T* z3 t+ u4.3 递归 + B t6 j) W+ L, j+ G& t
4.3.1 递归的概念 & K5 Q# A6 }4 B8 Q
4.3.2 递归过程与递归工作栈 * w' L. d$ u6 g+ {8 e% l
4.3.3 消除递归
7 {$ b# k5 M6 y4 U- C习题四
" Q9 \( E; m" |% S. o) V第五章 串、数组和广义表
% d1 H: ?2 Z; l, l/ ?$ P9 L5.1 字符串 ( E0 ^0 z9 [1 C' k* K# t
5.1.1 字符串的基本概念 - {" l% ^$ ^# \7 f" @8 ]! k
5.1.2 常用的C++字符串函数
I7 g9 [6 \3 E& J' Z7 c5 j5.1.3 串类的定义及其实现
) Y7 Z7 [+ i% }; X% a6 F/ M5.1.4 模式匹配 " H$ ~5 O4 Y2 h' c
5.2 数组 + ?: N# f$ _" G* W: _
5.2.1 数组的基本概念 & |! i) a. R. g2 |% g0 {7 q
5.2.2 数组的顺序存储结构 : B% y9 \; B6 m1 W4 x* }
5.3 稀疏矩阵 ' B7 s7 w2 p. z1 K9 w
5.3.1 非零元素的三元组定义 7 D8 ~& ^! p3 ]- T7 b
5.3.2 三元组顺序表
4 t6 }: H' A! ^# @5.3.3 十字链表 5 [# T! I: h, F: L* Z5 Z( Q) R
5.4 广义表
- D- g! A, \& }: D0 O8 i5.4.1 广义表的定义 # N J9 b! Y' b$ j4 j, ~+ ~) r
5.4.2 广义表的存储结构 : N2 g2 `7 |/ @$ J& m) k
5.4.3 n元多项式的表示 ! a; \) I. m& W- H
习题五
( t( l4 h$ _4 K; U第六章 树和森林 - k4 X2 E" [3 }& ~) A1 {
6.1 树的概念
! ~1 B. k: K- |. N+ U$ e6.1.1 树的定义 * i6 S# F6 S0 c9 y& \- Q: [
6.1.2 树的术语 0 a, x1 N! s8 T* k1 I# ?9 b2 o1 Z' s
6.1.3 树的表示形式 ' a& X' H% }. d# @, b
6.1.4 树的基本操作 4 @" C; m f8 z' x* | a
6.2 二叉树
; V! x7 q. D) c6 j4 M4 t6.2.1 二叉树的定义
* }6 M" n1 X3 R7 q$ n" R6.2.2 二叉树的性质 4 Y. W+ {3 f6 e* w+ `6 g
6.2.3 二叉树的基本操作 6 K% ]! x5 l \' Q* k- g
6.3 二叉树的存储结构
5 P6 S: U0 T7 u6 `+ l* e- d6.3.1 顺序二叉树
( b, h4 z8 b6 |0 K$ ^* ^6.3.2 二叉树的链表表示法
* f2 Y- y* z& Z, E5 N4 A P8 _6.3.3 二叉树的二叉链表类模板声明 : v! B0 ?" E* y1 Z( O9 U: B
6.4 遍历二叉树
* u$ d: \2 h5 V: b6.4.1 先序遍历 0 t& p( [4 i+ K: k6 o
6.4.2 中序遍历
e9 ~2 i) U# @" o6 f6.4.3 后序遍历
9 c( A1 |3 @ U0 ], g6.4.4 层序遍历 2 J, W3 |% Y+ z0 p+ j& D2 c5 k
6.5 线索二叉树 1 L9 L, u+ V9 ^/ a
6.5.1 线索二叉树的定义
2 K5 G. q' D# C' N. L6.5.2 线索二叉树的类模板定义 - h! C8 b" y8 W4 T
6.6 二叉树的应用 ! F. M& W& N b2 |. D
6.6.1 堆
% o. H' p/ l4 ?9 x6 f6 P6.6.2 哈夫曼树 7 O: u& M0 S% M+ R: @3 C/ m( ?, Q
6.7 树和森林的实现
2 s' O: z- v$ ` ^7 _6 V1 i4 c+ {6.7.1 树的存储结构 8 E% j- W6 w. k
6.7.2 树、森林和二叉树的转换 " G' A0 c L8 ]* ~7 k$ A2 Z, v6 l! r
6.7.3 树的遍历
1 N9 B2 I8 T: I% \% V0 Q! f) r7 t6.7.4 森林的遍历
& X* w% _6 f: P* U( `4 H6.8 等价类及其表示 ' o7 y/ Q! T% V' X8 `9 i( @
6.8.1 等价关系与等价类
. z! t y; _ c6.8.2 并查集
' E' @4 { c& ` i" ~; \' X习题六
0 S2 Z% N1 T/ b+ G* }9 c& q7 l6 b7 }第七章 图 + k* ~9 H) W2 V& B" w
7.1 图的基本概念
, b, J8 S4 g5 h9 R9 a% l# S7.1.1 图的定义
- M8 O+ A k$ h" h' H, ~) w7.1.2 图的术语
7 @, d7 n5 |. M. e Z; w ?7.1.3 图的基本操作
: T" W4 D2 E+ b& o/ E1 S" {, c7.2 图的存储结构 , z# g4 Q" M% x6 ~$ E
7.2.1 邻接矩阵
+ F7 T) i+ y, y; N) v* \) m9 f7.2.2 邻接表
, q+ b3 T! j; T7 P' V7.2.3 邻接多重表
" y4 Y% K" o6 v7 D8 A& H; A f7.2.4 十字链表
! B+ i2 ^% z3 t7.3 图的遍历与连通性
: `' {2 |1 \$ P/ ]3 W8 b7.3.1 深度优先遍历
( R9 P) P8 A% ~% `7.3.2 广度优先遍历 * g# U9 o7 U ] W) R+ z8 J
7.3.3 连通分量
: F, n/ s O4 R7.4 最小生成树
/ q9 P: ^* X3 k# R" ^7.4.1 克鲁斯卡尔算法
" }' B( f! _7 D! C3 Q: Y7.4.2 普里姆算法 ; I2 g! Q; W5 ?. L) t
7.5 最短路径 " g# a% d* G2 y. v- R% Q8 o2 \# a
7.5.1 弧上权值为非负情形的单源点最短路径问题
: W" ]. Q: _* _" ^& @7.5.2 弧上权值为任意值的单源点最短路径问题 , N! A! y8 N/ ?& y
7.5.3 所有顶点之间的最短路径
% r# t1 ?! s( e7 F7.6 活动网络 ( c5 P8 w, B, h$ U
7.6.1 用顶点表示活动的网络 3 _6 N! q) ? g9 O2 C3 q! V3 R8 j
7.6.2 用边表示活动的网络
; C2 f5 M% `5 T3 |# ^( T/ V: X习题七 4 [$ J4 B# B4 h5 ~, ~% F _4 h
第八章 查找
( f+ R9 x( ^" S8.1 基本概念 $ O$ m# _ J, g4 p) ]5 o1 c
8.2 顺序表
6 C- }! I8 E1 `* ^ O3 }/ J& n8.2.1 顺序表的查找 4 T' j. X. b1 }: |" Z1 b# f( Z
8.2.2 有序表的折半查找 2 l, h8 Q+ Z7 i, i0 g$ V: z J
8.3 索引顺序表和倒排表
+ j4 ~1 C5 C) B9 G8.3.1 索引顺序表 ( B, g/ I1 Y4 ^, ?, z) L8 g
8.3.2 倒排表
9 i2 l- c8 i) P0 v' P; V/ R8.4 二叉排序树
% Y3 y) e9 D* n3 q6 N1 Q. @8.4.1 二叉排序树定义 3 Y9 C& ^, j F& s( E
8.4.2 二叉排序树上的查找 ' m8 m2 H) d0 ]' x# l9 q
8.4.3 二叉排序树的插入操作 . k" b* v! X4 e/ }
8.4.4 二叉排序树的删除
: X8 |7 r( V* H8.4.5 二叉排序树查找的性能分析 3 \* [* d' m' y. z
8.5 平衡二叉树
! J1 l0 ]4 J7 c) V+ B' ^( g8.5.1 平衡二叉树的定义 4 ]$ o! D$ T# I! [
8.5.2 平衡旋转 7 Z" A+ \3 @' `4 `( o
8.5.3 平衡二叉树中插入结点 6 u' H- z/ |0 i' L+ ]; P2 b
8.5.4 平衡二叉树中删除结点
?- a; K! W4 b) l8.6 B-树
4 {5 `8 |9 x: M# i5 d* F( w' J8.6.1 动态的m路查找树 / w. i6 v$ z4 B$ F
8.6.2 B-树的定义
/ R- Y b3 f9 g3 ^8.6.3 B-树的插入
+ Z9 C5 K/ s9 i* t8.6.4 B-树的删除 : T. w$ z& Q) e
8.6.5 B+树 * b' w6 h4 v, n2 n Y% L9 q* J9 m: e
8.7 散列表
+ ]4 Q8 u/ w+ q8 {4 H! s8.7.1 散列表的基本概念 # \) B+ |/ B J+ B6 j9 X
8.7.2 散列函数
" N, r+ J p# V' _; [, g4 Z8.7.3 处理冲突的闭散列方法—— 开地址方法
! m A$ u: ?2 d$ L/ f8.7.4 闭散列方法的实现
4 n" N4 {; x5 u' m8.7.5 处理冲突的开散列方法—— 链地址法 + G$ E2 f5 f1 }/ W: R
8.7.6 散列表分析 + x9 R7 N! o' `" U) X+ }) K
习题八
! ^+ b) Z8 o( h) \第九章 排序 + R' u( N2 V8 n# S3 Z( \
9.1 基础知识 ( W: q) g, L; \7 K) B* j8 \ q. T
9.2 交换排序 2 }. j6 ^- D2 v, W; N& q- V7 e
9.2.1 冒泡排序
7 |6 F% x; L% x3 U8 n. y9.2.2 快速排序
* B8 Q) R4 J8 k- J# c) Y+ B9.3 插入排序
6 p# z) x# _2 B+ O9.3.1 直接插入排序 ) \4 F0 q( Q) u6 Q& @/ A
9.3.2 折半插入排序
5 H" w$ t" B, Q q5 y, ?9.3.3 希尔排序 ; I9 W5 t2 K( R6 l" L6 @; [0 {
9.4 选择排序
B! ?; y1 u& W! U9.4.1 简单选择排序
/ I Y2 H' s/ h1 y9.4.2 锦标赛排序
( Y7 A2 w. A1 {% O, k' t- \9.4.3 堆排序
u$ g& |3 ^$ O7 ?; I# ]9.5 归并排序
7 t1 f f- B' f2 p/ B1 O/ t9.5.1 归并
- `3 {1 R% h G9 {- Z# A9.5.2 两路归并排序 . k- D" C- Y9 R4 z# ~& |% n0 B
9.5.3 递归的归并排序
5 f4 v& P$ f2 A9.6 基数排序
) {) v& M- L( N$ `9.6.1 多关键字排序
7 ?8 q6 C) Y/ ^! H/ z9.6.2 链式基数排序
' u" {' y" H( Z2 X% j9.7 各种排序方法的选择和使用 9 l8 O9 c0 p0 E+ n$ n/ Z
习题九 , P' {5 P. j) M' l# v
参考文献
! G0 r! z) @: l, S0 u5 ~3 Q# ?/ G l, H0 |8 ]* R8 N O
Java资料百度网盘下载地址链接(百度云):java自学网(javazx.com) 数据结构--C++实现(第二版) PDF 高清 电子书 百度云.rar【密码回帖可见】+ z. x7 Z* H" V+ ]; N
; y0 L; S" p# Q* a/ u4 e: c9 L
; o2 [: ]+ {; p4 U' ?/ X, D7 i, U
& @ l' H) \7 h% M4 s8 x
|
|