TA的每日心情 | 开心 2018-4-8 22:14 |
---|
签到天数: 1 天 [LV.1]初学乍练
普通会员
- 积分
- 5517
|
java自学网(www.javazx.com)-java论坛,java电子书推荐:《 数据结构教程(第5版)学习指导》
" c/ H# W! h$ g1 P( Qjava电子书推荐理由:各章中除给出本章练习题的参考答案外,还总结了本章的知识体系结构,并补充了大量的练习题并予以解析。附录中给出了几份近年来本科生、研究生数据结构考试试题及参考答案。书中列出了全部的练习题,因此自成一体,可以脱离主教材单独使用。
& {% K1 Y& ?6 \8 F/ D" @6 a, P2 A; V4 b( Q R% W1 T; Y
作者:李春葆 尹为民 蒋晶珏 喻丹丹 蒋林/ C; g) ^4 F/ V- P8 F% `
出版社:清华大学出版社
5 H$ H& |6 [! K6 Q' |' L出版时间:2017-07-01 - K1 K; C+ l7 h) y3 q4 ~ p1 Q/ e
书籍价格:32.40元0 N1 P9 n( C A) d/ w- M' E* c0 d
5 N5 {: S/ N5 f/ v) B% \; ?7 t# t5 H! A Y% F8 d$ J0 U
& N2 N2 Z5 w. G" Q* D& ~ t
D2 V8 y) J* ljava电子书目录:5 G5 E) ^1 \4 k& w% y1 X$ L
第1章绪论 3 e" H9 i6 l" y0 G3 e
1.1什么是数据结构 0 S" r5 u! h* Z1 c) _" X, B
1.1.1数据结构的定义 " X. b; B3 {$ l7 | N" T
1.1.2逻辑结构
8 x) d3 H- A+ K& U w1.1.3存储结构
8 E/ X8 b3 z. O1.1.4数据运算 ) G7 ]* v# N6 \" R
1.1.5数据类型和抽象数据类型
7 N3 f$ b4 o! ^7 }& Z1.2算法及其描述
$ s) e/ I# N& G1.2.1什么是算法 3 i6 ]% u7 z0 g" R
1.2.2算法设计的目标 6 t/ g) Z# \; D% c. a% e- }5 D8 b
1.2.3算法描述 9 N+ u& b0 Y; Q0 n* o
1.3算法分析
# A/ ]' q2 J& Z. }& i1.3.1算法分析概述 4 y$ H( K9 k% ]3 e M
1.3.2算法时间性能分析 ! S1 k% Y/ D# F; d5 S/ L4 a- e. r
1.3.3算法空间性能分析 % ^' A. h' e- y5 E/ s
1.4数据结构 算法=程序 " S8 v+ Z. F+ K' a6 y
1.4.1程序和数据结构 9 g3 i; U, ]; H2 X( c1 ^
1.4.2算法和程序
9 B" L0 t n! j7 w1 N1.4.3算法和数据结构 8 q* e0 p# `+ ]' C& p8 z2 j
1.4.4数据结构的发展
$ i8 N5 ?% h1 N! v# B3 b+ x本章小结
/ s# u! m2 u8 |; S) A. U/ \0 x练习题1
* K) N6 X' R0 [; h7 p5 U上机实验题1
8 B: r6 U8 j9 g& ]$ m4 A验证性实验
, `0 C8 L% `1 L# r- t9 B; R- X设计性实验 / Z6 |) V, H" a6 X# G x
第2章线性表
0 {' W2 J! y) q% E$ h& }2.1线性表及其逻辑结构 0 w$ z' j+ Y( D" J9 U- R
2.1.1线性表的定义
% B5 o( }8 l, G1 n/ r2.1.2线性表的抽象数据类型描述
/ s$ O& z; V9 w* T2.2线性表的顺序存储结构 ' m/ G/ J2 Z/ r( }2 f) g
2.2.1线性表的顺序存储结构——顺序表
' G R) l0 \2 Y: O. Z9 F2.2.2顺序表基本运算的实现
/ H2 x8 t6 Z- E2.3线性表的链式存储结构 ; T- ~; E5 b1 L3 A5 g7 ^4 c
2.3.1线性表的链式存储结构——链表
2 d, e8 J9 P2 m6 ]& R2.3.2单链表
( r: F3 k' o; d2.3.3双链表 & E$ r/ \; e& w: @1 z+ m% f/ m
2.3.4循环链表 / d- E; A' j% V+ P# m0 {; T
2.4线性表的应用
8 U" n9 [7 r% k) ]/ ?8 c9 C2.5有序表
) a; V, ]. u& A# {6 N2.5.1有序表的抽象数据类型描述
" Y6 s1 O6 @" S8 [' K2.5.2有序表的存储结构及其基本运算算法
: @. o: e1 \* A% F& d2.5.3有序表的归并算法
/ o/ X" ^& S \- ^" V5 b, ` A1 v3 u, T2.5.4有序表的应用
0 z7 D/ D G2 C( i本章小结 7 z" I P" K' D0 ?
练习题2
5 V$ j q5 ?8 ?: K" R) R) j8 J, T6 e上机实验题2 $ V, a: b$ n- i; P6 T7 N1 L$ r
验证性实验 ( q* n' B4 O' G, F3 {2 W) `
设计性实验 $ I% r, r3 d! W3 N0 ^9 m X
综合性实验
4 G; L+ J' E: Q6 t第3章栈和队列 + W' f; J- T+ C- H3 I8 y' P' U. b
3.1栈 7 |8 G3 r5 R8 c- E9 N3 _* ~( j, \
3.1.1栈的定义
- [' k5 ~6 @( f& y( X) I& |* C3.1.2栈的顺序存储结构及其基本运算的实现 ' ^7 }8 Q2 u, m N
3.1.3栈的链式存储结构及其基本运算的实现 ) s& d5 @' c2 U4 ]* m' X- C
3.1.4栈的应用 4 K$ _6 I! y! Q$ ^: Z; }( h1 E0 l
3.2队列 $ x* F; l3 h9 }0 Q, H: r5 J
3.2.1队列的定义 T! ?6 M; }! O6 M: X4 K0 A( r: m% F( y
3.2.2队列的顺序存储结构及其基本运算的实现
* c5 y- O0 @; M7 R& D. \, A9 L* M3.2.3队列的链式存储结构及其基本运算的实现
. ^9 o9 \4 Z) s2 ?3 ?- p3.2.4队列的应用举例
) M% z' I! F9 L+ V3.2.5双端队列 : k' i- m3 w4 F
本章小结 u% p S; I. P) b9 \, f
练习题3 . \& Y5 T6 D3 d/ j+ ^
上机实验题3 $ O7 Y7 @( W; d# k2 ?
验证性实验 4 a9 R/ q7 w& g2 k1 [$ h E5 M
设计性实验
3 H. T5 I# V" ^9 v综合性实验
7 r3 L9 \. K) U# S$ G. |第4章串
6 e2 U* I- l4 y4 I. c5 f. K4.1串的基本概念
" b" e1 J. Q" V: w/ A% D }4.2串的存储结构
" p2 ~. v' Q& |4.2.1串的顺序存储结构——顺序串 5 f% b P" j* }2 D
4.2.2串的链式存储结构——链串 k) ^- L! u& S2 q; U& e
4.3串的模式匹配
1 m4 {' _9 Q# {5 q; b4.3.1Brute?Force算法
) h% Y; a/ l! l! o$ i4.3.2KMP算法 4 b6 A# \6 U& [# ]# W# `% l1 t3 `
本章小结 $ @4 D9 i# N/ _$ v) F' k" [
练习题4
- l% h9 N8 T$ ?" n$ M: C9 z# h上机实验题4
: |+ Z9 ]# H% Q" P v验证性实验 , ^9 l" h& F3 D
设计性实验
3 a$ ` z1 e+ K5 r综合性实验
: }% a& ~& M9 ^5 z5 I第5章递归
$ @4 _) X8 D( `( ^5.1什么是递归 3 e% |( R0 ^. I( ^
5.1.1递归的定义 6 y& ~0 N$ `" A% U8 u- _
5.1.2何时使用递归
! N, h* p, V# r! f$ v4 Z* i0 o5 u7 [5.1.3递归模型 0 M4 p. ^$ n9 |7 X
5.1.4递归与数学归纳法
6 t) i3 [ j, Z( c+ l# k6 w1 q5.2栈和递归 + I7 u% F5 I, \4 ~3 c
5.2.1函数调用栈
* l3 A& E) E1 n+ p" H i$ g; }5.2.2递归调用的实现 ; C0 d0 S& o+ d, p7 s" ?9 x1 k
5.2.3递归到非递归的转换
; M. T% Z8 t" F. {$ t) }! G5.3递归算法的设计
* q+ }0 D( R: h5 U5.3.1递归算法设计的步骤
$ `4 y7 S6 _1 t( `3 w+ @5.3.2基于递归数据结构的递归算法设计 2 f1 O2 d- \9 Z- R4 y
5.3.3基于递归求解方法的递归算法设计
! A5 n& s. |7 s$ z; g# z+ I3 a本章小结
& e( {/ `2 r. U7 ]( @练习题5
, {9 h G! x; g( g; z) |" i% n上机实验题5 $ G0 r, i* [! { Z) s
验证性实验
7 D4 K6 N6 s! u7 }% R$ y6 p设计性实验 . \# M1 w- t/ s$ |: ]
综合性实验 . q' S# l4 S4 m* o8 u% H# Y4 Y
第6章数组和广义表 % {1 ]( ~. W7 Z# k1 |) u
6.1数组
8 }* k; Z3 V& T6.1.1数组的基本概念
4 C9 L. Q, Q3 S( Q; ]% k' G$ u6.1.2数组的存储结构
p0 V p9 a: _; \( G# X6.1.3特殊矩阵的压缩存储
) b9 y5 ]& V' I; O0 h6.2稀疏矩阵 - H7 X& ?( K% ]6 V
6.2.1稀疏矩阵的三元组表示
3 _6 J- G& y7 J9 x3 q6.2.2稀疏矩阵的十字链表表示
; N, u, m7 }: `9 s. p6.3广义表
# G( m" x( q9 R; l$ Z/ v9 k# R6.3.1广义表的定义
7 k; x, a4 J4 P; W# q6.3.2广义表的存储结构
) s& e0 ]# T* @7 u3 b6.3.3广义表的运算 # M* U* C( ], B( ?" d2 B! L
本章小结 2 v. M: s+ I6 j# R( E
练习题6 # b) O+ s* j9 S( ~
上机实验题6
- Z' y" [4 e/ ~验证性实验
3 _/ l2 z" v1 w: e设计性实验 0 F5 D2 B. @- x4 _2 H- h6 L
综合性实验
# ]( j0 L; o5 s2 C6 I$ ^第7章树和二叉树 $ X5 b) z2 w7 ]6 [, }
7.1树的基本概念 ! \& h( m6 y0 d5 z' D4 B `3 C
7.1.1树的定义 % R& ]( t3 p9 P( d3 |
7.1.2树的逻辑表示方法
: T, x6 ?+ @0 c |6 @- E7.1.3树的基本术语
% E ?; i0 h7 Z7 _. P. c7.1.4树的性质
7 T, N! S9 \, U6 q7.1.5树的基本运算 - G d: K7 h/ `7 D" b A8 `# E, u
7.1.6树的存储结构 - k( t/ Q) Z: I% a& R) P, ~
7.2二叉树的概念和性质 4 r9 X; J7 C, y
7.2.1二叉树的定义 & a, v: E! T9 ? a! h
7.2.2二叉树的性质 4 e; N1 Y. K: p7 \% Q$ |
7.2.3二叉树与树、森林之间的转换 & x( }8 X- ^# g4 [
7.3二叉树的存储结构 : {: Q& w9 F! P N. w" I1 x3 J2 h
7.3.1二叉树的顺序存储结构
3 c+ L+ _; v' j% U& s# V9 J7.3.2二叉树的链式存储结构 ; \. W% ^! w/ \- T; K2 R& B) G
7.4二叉树的基本运算及其实现 2 k& v! ]9 \) Y8 g) F
7.4.1二叉树的基本运算概述 + R, y4 _$ G: W6 @+ L
7.4.2二叉树的基本运算算法实现
3 ^$ X3 S: h f) X( m7.5二叉树的遍历
$ k/ p8 o# S- @0 u, W3 L7.5.1二叉树遍历的概念 ) X3 p2 U8 @# n% U% e p+ g
7.5.2先序、中序和后序遍历递归算法 ) G) {$ V p4 W# R* q- V
7.5.3先序、中序和后序遍历非递归算法
, o; n" [5 \$ t; u7 Z& P7.5.4层次遍历算法
/ T% g" y' M: ~# a7.6二叉树的构造 3 c* \) c6 r2 \0 j; g& e- o! p6 ?7 b
7.7线索二叉树 3 l# {0 O0 i1 L8 Q6 x
7.7.1线索二叉树的概念 % b: C; j4 d4 m& {$ [9 k
7.7.2线索化二叉树 ( D! C7 p6 t: b. A' @
7.7.3遍历线索化二叉树 : i6 F3 Y; ]% G1 a9 e
7.8哈夫曼树 - S: ~: r) N7 Q
7.8.1哈夫曼树概述
7 e: t: Q7 D5 {+ V( K t) L8 p- p7.8.2哈夫曼树的构造算法 1 H! q: o9 _7 V; J5 a1 V D
7.8.3哈夫曼编码 ' c( i7 {# N' N* W: ]( p, _
7.9用并查集求解等价问题
$ O$ `5 G+ X8 U7.9.1什么叫并查集 1 W4 K( l; R$ j4 h; i( r" F" Y4 t
7.9.2并查集的算法实现
% A) O1 `- O- \4 {9 v本章小结 1 F- k7 R# Y) G: I
练习题7 2 R1 X3 Q( g; c# w1 L
上机实验题7
1 v9 b/ W7 L1 G5 @6 `验证性实验 : x( h& s4 d$ X: X( \: M7 v
设计性实验 ; h+ b3 T, Y7 r' W
综合性实验 & Z! C1 C) p- y' K' [- j- v, S
第8章图 4 p! L2 @# N, c5 b
8.1图的基本概念 0 f, A, {$ r9 S0 o/ _- n
8.1.1图的定义
$ J5 H- [6 { L# I3 L+ y8.1.2图的基本术语
2 p5 M( h* E2 \$ |. L8.2图的存储结构和基本运算算法 ( k0 i, F4 z& I" \9 E: B! v
8.2.1邻接矩阵存储方法
9 |$ R1 `# d: q8 V- o$ S8.2.2邻接表存储方法 & o" v2 u8 J; l; D5 [( z
8.2.3图基本运算算法设计
0 ^9 @/ u* T/ y8.2.4其他存储方法
\6 w) T3 e: G- H. v# `2 I8.3图的遍历
) z% P7 ?7 ~. m& q+ S# W8.3.1图的遍历的概念
- { C' c5 I7 Y2 g8 C: i# y8.3.2深度优先遍历
) E" y( v9 z! B% y* x# a0 E8.3.3广度优先遍历 / I9 \ O z; u% F0 ^2 O7 V5 j4 l! u7 p
8.3.4非连通图的遍历
' e" V j- D, Q: [8 ?8.3.5图遍历算法的应用 ; S6 W# n# Y" T T7 l9 x. |
8.4生成树和最小生成树 / p% `7 X4 `* s8 x. w$ z
8.4.1生成树的概念 r2 y9 k6 I3 x3 w( c2 E
8.4.2无向图的连通分量和生成树 ' e3 S) p. E6 A+ I' V/ |
8.4.3普里姆算法 ( a2 T1 S/ e2 ]5 T5 @* a
8.4.4克鲁斯卡尔算法
! G6 W2 {5 h- `) u8.5最短路径 9 M% j R! e. [% u c% Q
8.5.1路径的概念 ) K) ?9 c% n m$ P
8.5.2从一个顶点到其余各顶点的最短路径
& I3 x7 h6 ]# \- g: E7 \$ @8.5.3每对顶点之间的最短路径 7 ?5 j/ K" ^, X0 I
8.6拓扑排序 * W; I& L; s; B8 `' Y/ v t
8.7AOE网与关键路径
6 U# ]' _- c4 F& G( b0 B* E8.7.1相关概念 ( `6 Y& d9 I) [) P
8.7.2求AOE网的关键活动 " }( K: `1 \4 @! @. ]+ x
本章小结
- z7 f% X% z, ~- z练习题8 $ X- g( }- n* C" s+ E7 g* B
上机实验题8 ! _5 a% c0 V# U
验证性实验 ( T; R7 T( s: D2 c8 Z
设计性实验
1 }; l. {! H9 i) h5 G% z# O' `9 {综合性实验
( e# q' N$ S8 y0 C第9章查找
8 w, O6 T! I# t+ b: F) s9.1查找的基本概念
# f$ ]( c) t: b# x7 x9 P5 Y9.2线性表的查找 8 {7 [0 T7 {3 X+ g5 G# `1 e' r6 e
9.2.1顺序查找
* @8 T/ L) g$ w: x9.2.2折半查找
4 U# C% `$ }" U+ N; Y5 C6 @6 V `9.2.3索引存储结构和分块查找
+ `4 }+ X. x, e: y; M- ~0 m9.3树表的查找 - G/ y& ]+ [. D5 B4 u& Y. Y" t
9.3.1二叉排序树
A: ^. S7 K' W* x+ |$ D9.3.2平衡二叉树 # s! k" n: l* |( d: h& X, _" K
9.3.3B-树
7 q- \. m8 O* G c! ^0 t! h9.3.4B 树 $ d( M; I- x! r
9.4哈希表的查找 2 N3 |" @ E* `9 W
9.4.1哈希表的基本概念
1 w& k4 p6 [. @3 O; T9.4.2哈希函数的构造方法
, k" [$ ?2 a6 q; e. i# u) }* i+ h3 ?9.4.3哈希冲突的解决方法 . R8 W; ~& k0 K! p7 K+ k
9.4.4哈希表的运算算法 0 m5 f! C( v# C: d8 |
本章小结 & A2 H: i& Y. e, D
练习题9 ( Z6 ~. R5 ^' d
上机实验题9 1 n) e g" J) |: r$ `
验证性实验 & \$ {5 M' x" i( r0 L
设计性实验 0 X5 L4 ^3 e4 V; C, ?. {% ^3 G
综合性实验 3 J7 b( {$ g' `. F& h9 p. R
第10章内排序 : z! X, ]4 }# n& x( ~# E' y# H
10.1排序的基本概念
3 R y6 Z% _' P9 f/ c& h10.2插入排序
: m6 C `5 r/ v10.2.1直接插入排序 6 P# i' t+ O; d0 H+ r# {
10.2.2折半插入排序
2 H' l( W3 Z. V! D* y. y- W10.2.3希尔排序
. [1 D) V2 F- `0 s5 q- x* n10.3交换排序
* T. a8 ^& X9 ~4 V7 ?( ?$ @. M! u10.3.1冒泡排序
+ k/ i# g- t" j5 J; v% s! o/ L10.3.2快速排序
0 ]3 U s& j% E, H% h5 g& @8 z10.4选择排序
) `6 [4 d" s& d) ~, j6 P3 B( _: o10.4.1简单选择排序 ) ]/ A; a, I" R
10.4.2堆排序 & c0 C2 _0 p5 M" a3 ^
10.5归并排序 4 F: p1 n& q! P8 o |. f
10.6基数排序
7 i1 _2 T. z# R ~" s/ f4 n10.7各种内排序方法的比较和选择 $ g4 b9 n7 ~' }) V! K" w; s
本章小结
& H# N9 Z3 s. G练习题10
% C0 `- h8 C1 A5 i1 j8 ^上机实验题10
6 A7 c- L6 M3 T% [验证性实验 1 f( j: C) F- B
设计性实验
0 b; A' J7 p/ Q7 ~$ V综合性实验 x( s6 j7 w# w4 W3 l; M* ?9 Z
第11章外排序
) T2 C$ j0 X1 u, S! }4 D11.1外排序概述 3 F! B; J# |8 ^4 E! L( ]4 g! X3 v: w
11.2磁盘排序
% r# m m2 V1 g! s9 Y11.2.1磁盘排序概述 : b5 L* ~6 V( g6 w
11.2.2生成初始归并段 . f" y. Y/ R; {8 G/ d- t/ C( g$ B
11.2.3多路平衡归并 $ H8 h1 z5 ^4 l# J% a3 _
11.2.4最佳归并树 # @: q# x. I1 o/ z9 e# z U- j
11.3磁带排序 ! C3 s9 a$ m) \( S; l
11.3.1多路平衡归并排序 * E; ~4 ^; s' Q! x. a5 j
11.3.2多阶段归并排序
/ R# g, [! a! y& j本章小结 / ^ _& b+ i. l5 @) n" F! |
练习题11 8 Y: S5 R9 k' o6 C4 g
上机实验题11
) y$ o: ~+ X7 H1 o$ l验证性实验
2 G- ^; B; i( q设计性实验
; s c3 T% b0 {" v# V5 I( h$ Y$ p第12章文件
: b6 P2 i O+ ~0 p12.1文件的基本概念 F) K4 d. v U1 C: S( l. u
12.1.1什么是文件
- G. E/ O5 i4 u" |1 v0 J# R12.1.2文件的逻辑结构及操作 8 x1 l- ~4 V% \- T
12.1.3文件的存储结构 2 g' \ ^" d+ r9 \6 g3 o( M
12.2顺序文件 h+ J, ^' _1 Z% q8 \
12.3索引文件
7 i/ Z3 _/ a) |0 W) N/ z+ Y12.3.1ISAM文件 4 O& J0 P; h, s2 O3 s$ w2 g6 H
12.3.2VSAM文件 $ H( k- f+ `" k. }0 m, d3 t g
12.4哈希文件
" l( b; i5 k Q/ T! y12.5多关键字文件 ) q2 e U1 C3 U
12.5.1多重表文件 0 Y0 ?7 g9 U5 D: F# M8 `
12.5.2倒排文件
; b4 ?( Q/ {* A9 V本章小结 4 u0 I6 R4 j, C9 ^
练习题12 / ?6 ~: K3 o/ z
上机实验题12
* H2 p( i* ~& d验证性实验
- u; n0 X: J. _0 A8 `6 E设计性实验 - {7 v2 E6 m C6 i9 M
第13章采用面向对象的方法描述算法
0 z% S0 s; O0 f- v7 {13.1面向对象的概念 7 c5 i1 z2 Q$ [$ P. h% O" Z0 F/ C
13.2用C 描述面向对象的程序 + D4 U0 _* l2 t
13.2.1类 % w6 M8 F/ }1 S: t
13.2.2类对象 . q. |# |% a& O+ b& U
13.2.3构造函数和析构函数 * a, C- [( I1 X
13.2.4模板类
: A+ H- G) D( X0 \$ v13.3用C 描述数据结构算法 0 o2 }, s% \% U' h4 g; T
13.3.1顺序表类模板 . j1 z$ _# r; k
13.3.2链栈类模板 0 z3 d% v$ o# ]2 F4 N+ g
13.4使用STL设计数据结构算法
3 K7 \$ B/ e# E, f( V5 ?1 y0 h& }" c# w* W5 x7 u' b$ o
附录A实验报告格式 ' {' a6 [) j1 W' b% S& W; w
一、设计人员相关信息
$ P( @- w6 h, a, b二、程序设计相关信息 ! e, ^& B/ |7 j' a5 l7 C: M( t
三、实验提交内容
% l+ R+ Z. Q% s4 k' b4 ]' @$ u1 f附录B引用型参数和指针引用型参数的说明 + a0 P7 w/ B2 D3 A9 F) P4 B" \ L* Q
附录C算法索引 7 t# {1 @ v$ ^
附录D名词索引 7 h8 y. p9 i& P ~
附录E全国计算机专业数据结构2016年 联考大纲
' g, z" s0 M: g; k7 a( q; B参考文献 - O% @9 G. }/ [$ g5 i5 w
Java资料百度网盘下载地址链接(百度云):java自学网(javazx.com) 数据结构教程(第5版)学习指导 PDF 高清 电子书 百度云.rar【密码回帖可见】$ a/ W! X* V7 S9 p0 W
. s4 M6 ^& _5 t3 m+ j1 W+ i% @
" z' R) g0 w- V3 M* a
w# ?. I1 o; _/ j5 L
. B, z/ v- n) c, W
|
|