TA的每日心情 | 开心 2018-4-8 22:14 |
---|
签到天数: 1 天 [LV.1]初学乍练
普通会员
- 积分
- 5517
|
java自学网(www.javazx.com)-java论坛,java电子书推荐:《 数据结构与算法简明教程(Java语言版)》3 m" I' @- y6 x
java电子书推荐理由:本教材突出Java面向对象特质,注重概念、原理和算法的实际背景引入与线索发展思路,强调重要算法的实例讲解与应用分析。突出按照数据逻辑结构组织内容:线性结构(线性表、栈与队列、数组与串)、树型结构(树与森林、二叉树)、图型结构(图、网图)、集合(查找、排序、文件);强调基本概念的背景引入和基本算法的实例讲解分析;贯穿 细节决定品质 理念,努力讲清讲透重要概念与算法。6 k: U* `* T& F, p0 ]
1 A* V4 r. z; |8 ?
作者:叶小平 陈瑛
% y8 i: L! @5 A4 u出版社:清华大学出版社0 I0 f5 @& L6 U2 X0 N
出版时间:2016-09-01 / h9 u- j) v9 C2 B# r. t) H
书籍价格:36.00元* \* l4 Z4 N/ ~+ u
/ q6 _2 b2 G7 n- `% x7 y
# ^! x# p' [9 l1 n, c, K
2 H. g- a2 t0 _$ \, g
9 K3 H) ^+ {& M) m2 D h0 J- Qjava电子书目录:' A' J! @+ Y, k$ e# C0 t
第1章绪论( P( p8 p4 P( K; {; w# b+ `
$ o' D* T! X) l1.1数据与数据类型
# d0 x3 j2 v2 j: e- W; S' `: K
1 U' @9 i+ T" l( a1.1.1数据的基本概念
# V7 I/ D) n0 m6 q* _) ]# _, v
2 i( V1 S6 B! Z. F1.1.2数据项与数据元素
5 r; q' m+ g$ h6 _7 t% z- ]7 J
, `. N. m. F. ^6 n1.1.3数据类型与抽象数据类型( p. @: U# b7 ]/ y" U
- r C1 [1 B8 [0 y* u
1.2数据逻辑与存储结构$ l ?1 R$ s2 c( |+ d" A) Y; R9 h
- k. r" q2 W* w+ q5 e" Q' e8 Y {1.2.1数据逻辑结构3 L& U+ L3 P6 v# E
% n8 h: V; Q4 }* d
1.2.2数据存储结构
* m7 U+ I7 c9 m- C8 y9 ^* @, l+ y0 e% U5 z, ?) [8 c
1.3数据运算与算法
4 u/ X; d, W9 | F9 N, l; D l3 C# s2 E2 x) a& `% ?& X6 \
1.3.1数据运算! j* q! Q( e' W4 ^; Q5 k, I# e
, ]" U. L9 O+ m, Z
1.3.2算法及其基本要求/ T- d( L+ r$ Z" G) \9 ?
% C2 `; \2 k: ?5 I/ Q8 s. o+ D
1.3.3算法设计与分析
7 P& B* m1 h2 ~& f- S1 ?8 `3 {* F
7 h+ v% J) U" A) Y1.4“数据结构”课程的地位与教材内容
& u7 i7 S4 l( v- l. ^' `$ l! }! W& {& \5 `) S
1.4.1“数据结构”课程的地位
) |! t0 @- g) P# A! J
- ]& x6 T# D) _3 T8 y* J) m1.4.2本书内容组织
4 b3 r, Q- A& H7 |+ l, p! M c2 ?7 y1 k" K
本章小结. `) p- x5 K* D/ X7 ^
! N# p9 C$ K- M/ h
第2章线性表
2 \3 |# y* |, f: w8 y0 R
! p6 X3 I0 ]4 [& h) y3 L2.1线性表概念+ \% d/ I& Y- s$ l
- g( H$ t( o+ }7 N+ Z1 [7 j
2.1.1线性表逻辑结构
" z& }; W: _6 x, s: F
: H; R2 J( ^- c7 V. Q$ ?2.1.2线性表ADT描述! ~4 i' g# y K. J+ k
" {% N) O. q: c2 {6 F
2.2线性表的顺序存储 ^0 `& ? q& s( ?$ |
4 i% K) P* d2 P1 b8 I
2.2.1顺序存储结构. H8 E! l) @2 _+ U& C. P
, U6 P: Y! M% x: ^4 g2.2.2顺序表的基本操作2 y7 F; n; O- {! C+ U; x
7 ] Z8 \9 x3 Q6 w, \) |
2.3线性表的链式存储
+ h Y. e) M m" ^% Z
: E" w9 d$ F* K) J2 R' ?2.3.1单链表概念
7 o% m+ S: P# h: B: {. W- X. {0 Z$ ?( r5 b( U; y
2.3.2单链表的基本操作% i: y1 _# e( A1 R9 g# v, X5 e
% l2 F3 F; K/ i3 b2.3.3线性表存储结构比较
, X7 Q0 k6 g- d
* {- H1 {, V! v7 _- l2.4链式存储其他实现方式
1 ~' y; |" W& f" { v( ]( q0 b
' A+ Q; I6 F, j- B) c u7 B2.4.1循环链表
) E4 N/ Z: ]1 O% [2 x" d- x9 {& X' l+ V
2.4.2双向链表
& K4 G& ~* i/ V n( T6 Z) f: Q3 Z0 I9 p2 e
2.4.3静态链表
& j0 y( Z3 L' o8 l% r7 J- t' Q) u B1 |
2.5单链表应用及迭代器
/ s) U# a/ Z! t) r4 G* W) C( q, |- y- f' H$ w+ o' A
2.5.1单链表倒置; e( w. l: J; O) c) t* e8 S
% o$ y+ L. s4 s) `
2.5.2两个有序链表合并
9 [! U+ X4 W$ G! S/ ^0 f: g( d4 }3 X: j7 M. z+ B8 }$ t4 ^
2.5.3一元多项式计算6 e. E3 }8 |& G' ?1 V4 S; } n
' Y/ S$ C- n( }& Y' l) v2.5.4迭代器. |6 L$ D; @8 ~* L h1 J
, R, m n$ J1 G) a" t# I本章小结# L+ @6 ~# W2 u2 k) w
0 u- M6 F0 H' N2 N: E第3章栈和队列- D4 }6 `9 ~1 C9 N4 g9 Y4 n
# { I( l) I0 n3 i. B" x. Q; B# k3.1栈
; S9 Y, S% X4 Y r- `+ S3 @3 L; B* c1 M. R$ m
3.1.1栈基本概念) v5 I' @3 {5 n) p: H
. }" q m, N& n- s. x( `* S' M- r3.1.2栈的顺序存储
* d1 V& i7 V0 q) v( U/ k
4 k7 t) U% |7 _& f4 o# a3.1.3栈的链式存储
) X& u8 J6 |- @; y
0 F2 Q# k) i8 d2 {. Y8 _3.2栈的应用) `6 n; h- F0 i% S' N
+ V6 R6 }* j7 F( `4 L- R/ n7 M8 T
3.2.1数制转换. K' E. S2 ]1 u: S" w3 H
3 C- I9 Q, E" z$ [5 a" F5 u3.2.2栈在递归中的应用
# [ m- J8 c+ s# j* h% _* B* K6 Z3 ]
3.2.3栈在括号匹配中的应用
- q/ S9 Z+ S6 t' ^) \! o$ r6 q/ B; o* i4 O! t$ q8 J+ ~
3.2.4表达式求值
Q8 W, l! F2 K! ]* g1 T0 f
/ r, a1 ?3 o6 O* r- b3.2.5迷宫求解
. N- W: B4 M7 O6 }0 L8 L% C5 n0 W( a0 m- v6 D" J2 |/ ]" Q# U
3.3队列
' B- W( g; t, L( i# V, n1 [
& X# W' v* I2 J$ B5 b2 {3.3.1队列基本概念
( L9 N, a+ S2 c! _' }8 _- _! T- f4 K, t' w
3.3.2队列的顺序存储- O, X$ y0 @% W2 O6 @0 H0 @+ ~
9 E" j' g0 V2 o9 m; K5 t3 n8 m3.3.3队列的链式存储* j( X% v! v" n9 ?
# q( t6 f6 H" ~, |( g
3.4队列的应用
$ w1 {4 h+ s( ^: M* Q, i; C2 w
8 m4 ]5 p5 F+ \# n8 M4 c- m5 A; d3 I本章小结
" m' N) \# V& V8 V u4 @# E
8 B* h' \$ P% L% ]第4章数组和串0 I2 g0 d! V9 b: r- v- i
( h* N" D/ t$ j, J3 c9 e/ f4.1数组
) b2 [0 s6 W& ~4 [, h" p0 z
m4 K4 H9 u8 L9 I7 J4.1.1二维数组
( P7 }9 X( _2 X* _9 V g% [! C0 s/ b
4.1.2矩阵的顺序表示与实现5 y j5 o# M, K9 o4 r. _
7 M+ f: j1 C/ I
4.1.3特殊矩阵的压缩存储- W7 P; U* b% f
3 Y5 o; ]5 Z% @7 a8 I. A7 K4.1.4稀疏矩阵的压缩存储
7 C* X, k% ]" y% Q* v8 `
% y V5 U7 I$ f2 q, m0 u9 \0 j: x4.2串
! L7 W8 \$ z! k# ]; y4 t! G
* V; J1 O7 Z* Q% c/ v x" N1 u" y p4.2.1串及相关概念
3 {" ^& G- n9 H V& ^# J/ ?( C/ d, M$ s% a5 P1 a3 e
4.2.2串的基本操作
! ~ f* S0 c3 V# C! [7 e1 F- n) ?; j7 R, I
4.2.3串的顺序存储$ h9 _% k T0 A) r/ C1 E1 h; x
. R6 k1 {% t5 [7 [ l- p
4.2.4串的链式存储9 y" S& P" D5 i3 z5 b
. i7 B+ c' f; {' l. F, w. z* a5 W) |7 ]4.2.5串的模式匹配
6 K! _6 P+ [' B! M. t& b% Z! m/ a" c& F0 U' [5 s; ~1 l: Z9 [
本章小结; c7 r% ]$ i# z
' W' g! s. p$ S# E$ C% g% Q
第5章树6 Z0 m d' e3 G+ ^0 V7 x8 e
% W. m6 Z {, y# c- h9 K5.1树结构及相关概念) ?, T! a( x6 ~1 e4 h9 d* |$ U
+ ~, ~: W c# Y" M! q6 R
5.1.1树的基本概念
$ F7 D( K0 |" ]' r4 |" c" m4 {" H1 ~0 O4 Y: }& M
5.1.2树的相关概念; G, i8 ?# \, O% { N6 H
~- K! E1 O7 W1 V, U& b* }7 a
5.2树的存储
6 A, x/ `, p) U+ o. o
4 B. {5 i9 B0 Y9 N! P1 r5.2.1父结点表示法存储: T7 F, @1 y. d+ Y
( `/ S( f+ C4 D3 R4 e" O3 F* L2 C7 Z5.2.2子结点表示法存储2 M' |) f- z: r g' R0 j
+ S9 y) o( }* d2 w5.2.3左子/右兄弟结点表示法存储/ t3 v# w- ]4 ?1 W& L# ^, N8 \) m* ]: A
( d4 `; D# r+ c
5.3树的遍历
4 \4 |) R6 k# J
+ |& n" f" o7 a* d% ^0 A5.3.1广度优先遍历2 U. e- I) N8 D% ?4 @2 r0 D5 y: ~
- r9 {3 B' B" r0 ?, Y5 f% F8 k) s& X5.3.2深度优先遍历* ] C1 g8 c! X
7 a7 t' R0 K) n) a
本章小结( F5 M: \ ]8 j
* ?1 l8 T( S9 [( T6 ^+ q- T
第6章二叉树及应用" |3 W3 e k$ a
+ K3 R% l% c5 y; x& V% Y6 o
6.1二叉树的概念及性质
0 p/ W- M" R) Q; @) `2 r6 O0 T6 x L* v: b" u `( E4 e
6.1.1二叉树及其相关概念( { {% S- Z% _0 Y+ S# U
( E; y3 X- B- r; }) b9 \6.1.2二叉树的基本性质0 L9 [: A! {0 z" u8 c
) O: S2 m* j$ O: r! b: P9 y6.2二叉树的存储
) e) ?- t+ u% r; Q7 p( W1 ?" L8 }, {* f( i+ B
6.2.1二叉树的顺序存储
& T( k; V2 F; t: W/ S i4 k2 I" ?4 Q3 y
6.2.2二叉树的链式存储
9 e& i X3 }4 r4 Z2 }- L5 G2 H2 U
/ @& \. b- Y0 ~* z6.3二叉树的遍历
4 \; q! Z3 S+ ~+ N/ O& k/ ~/ K8 M! E
6.3.1先序遍历、中序遍历与后序遍历
2 i! Q7 ^9 W' ^
& _3 k+ W$ O% w6 w% k6.3.2基于递归遍历算法: A: z! R' u n/ x6 i- T8 O; x
$ R. ?; M& {& T2 D6 j3 D6.3.3基于非递归遍历算法
) i1 q1 k6 {: L
9 u) O* x1 k+ A6 m% q- C2 ~6 X6.4线索二叉树
9 n: G: G! b+ t: n4 C9 Q8 c9 M+ d! E, ?# p) `) N
6.4.1线索与线索二叉树
# {% K5 ^6 a0 G8 {( W0 ^! s+ |( T% t o2 W4 D8 _) [; W
6.4.2线索二叉树创建" U2 r; W+ `# O; l- R' A
1 G0 R. s. C; E. C; ?. F+ Q
6.4.3线索二叉树操作
% `( z8 p% r2 f( x9 G4 k* F& t. U7 f! A6 `
6.5Huffman树及其应用, P2 W# ^2 x4 n. @
% {! h* V m6 g& l
6.5.1编码及分类
2 Z% L" I2 H; x+ D& O: q* _
! k3 y- H" X% v; t4 h. M2 G, @' v6.5.2Huffman树6 ^0 t% ?/ ~) X
% k) P% L; h0 W+ r: s# D5 Q
6.5.3基于顺序存储Huffman树0 j* w. S( ^8 E/ |; `& ^. J2 w2 m
. |6 C5 `/ v# t# ]8 x
6.5.4Huffman编码
8 ]2 {/ W4 O+ _0 a$ ^! ^) A. ~ m' L
6.6树与二叉树的转换' l9 ]& P* r- f9 O% J
5 Q5 `4 p; G; M: g0 `/ b1 J6 F# `
6.6.1树转换为二叉树% J/ D# h$ t$ F; i2 o0 I
0 K2 G8 {- r& p" x$ E4 y
6.6.2二叉树还原为树
- c4 X5 b9 s% W; U7 w$ p2 n) P& _1 O" ~" p7 d# b/ ?/ Q
6.6.3森林与二叉树的转换
" l6 \; f2 }" m/ d1 C
+ |: A# I. U( C4 Q+ C本章小结
6 m. M0 z) P" g/ r3 c7 ~4 g* R# _" q. t0 z- B
第7章图
5 o; H9 | w4 o
9 Q+ i, k9 S4 ]9 H0 ? h8 w1 v7.1图的数据结构- t s! N/ v9 M- W+ G
; ]& a3 U- m- l2 Y5 j- g7.1.1图的基本概念5 ?% D0 F$ b: M" _2 z" Y/ x
9 M3 w3 D @- X
7.1.2路径与连通
8 D* A+ ^' Z0 {2 V4 A8 |; F! t% ` f. b0 r. {* o# X
7.2图的存储
" M# s# s; g) h! A* `! \/ j( e
" z/ v+ }2 Q$ r$ v. L7.2.1基于邻接矩阵存储) t: F8 ?7 H' J8 d! r a
5 h, q! S3 ?- B) q4 A2 } u1 B
7.2.2基于邻接表存储( u2 g8 J) H7 O9 @) H! c
" \8 i8 ]% Y# R
7.3图的遍历
" G, i7 r& R/ i" ?2 d+ Z) h9 ?
& f3 U; J# v% G6 ?7.3.1深度优先遍历
0 ^7 o. L4 M, D* Z! y6 N4 a& ?' h! n) f- B) |- a4 m7 Z
7.3.2广度优先遍历% n! t0 N: Y1 D- \1 f0 J
1 i! f4 L# M4 V4 y$ s Y
7.4生成树与最小生成树2 h, c3 M. p! p2 f G
$ ?& M+ R% } t6 ^" m! T$ Y
7.4.1图的生成树
: G7 W" z) |" h' y8 i+ G
0 l$ b, W! C% @ Q' @: F+ C* [7.4.2无向连通图最小生成树
6 g! ^. e; c/ P" A. X) {6 v6 A. `$ Q0 v6 y7 s) I
7.5有向网图的应用$ e* i' h( Y: |
" L+ k! m0 \" i' \" L1 k! V7.6有向无环图的应用; A9 M! O' } q) _* b
/ |( ?' K7 F: K: Q' A
7.6.1AOV网与拓扑排序
+ H3 O5 n4 m* h4 ~# N+ T' H
; v2 G/ p, [" V: R7.6.2AOE网与关键路径
`+ Z) }$ Q* w7 U$ q% G0 B" T7 ]! q1 ^4 X3 M
本章小结
) U4 f! x- [# S5 _ {
6 f) L2 c( `6 C3 n3 G: j第8章查找9 r( e, F, o# m c$ W. b
5 Y. `1 @/ |0 i y; M) ]: L' X: E8 h
8.1数据查找1 n5 h, E! f. i" Z c7 O1 j% q" ?7 X
9 `5 D( J/ L! I- o8.2基于线性表的查找) j+ n1 y/ W* r a" V
0 d; z- A: e# C0 v0 Y8.2.1顺序查找 k. b2 f8 f) Z* _1 `* g' Z8 p% l
9 A5 [( l) o7 T; H4 K8.2.2分块查找
( Y7 Q; C4 a& v& Q' G: s1 _6 o( H7 |0 ~7 W% u$ K
8.2.3二分查找
: e8 x# _4 F. W& C5 b: b/ { O4 [) G9 u D
8.3基于二叉树的查找
% t& w2 K3 R/ `. B5 x" z6 l0 ], C7 t4 m8 y" c( f9 A7 T8 Y
8.3.1二叉查找树概念
! n Y5 C2 J' Q7 O& V9 f" w o
& J% x2 R$ s6 W1 A/ f, K2 u/ N7 ]8.3.2基于二叉查找树的查找
) M" _2 s( {6 E2 I" m+ S/ _' z% b5 H& l* i
8.3.3二叉查找树插入与生成算法& F' M- T9 C, b
8 |# n3 [) i4 w1 y( @/ \" A. q
8.3.4二叉查找树删除
8 X8 |% O( }: ~6 B0 \6 X# n
5 A% s4 D; r5 x# M S! e8.3.5平衡二叉树
( d/ A O- x1 ^2 T5 ? g) d s: Z" e) X( K! d
8.4基于散列表的查找. O+ w( U8 t/ X* g4 x; W% {
: F# Q! N) j G1 {- ]3 k
8.4.1常用散列函数构建/ s# k5 l3 ~5 ^1 @9 }
5 c/ R1 s( w% x# A1 U$ ]% i# B
8.4.2散列冲突处理( j+ |6 _# R: B$ c- Z
: p2 a8 u* H0 n4 z本章小结
+ v8 y% o6 O3 U! ~9 R/ y
2 R: w8 m* l- u. t) E第9章排序, r" g) [" O s: z. C
- j3 _& U, ?6 x4 Y% X$ P! i
9.1数据排序" a, N! h' d! J" C8 k
9 i3 d `9 E6 \+ R& y9.1.1排序的基本概念1 _& G: S' l$ a v6 Z: k. P
) @- h# h3 r g
9.1.2排序算法性能分析
, q; [8 [! [$ z: B4 ^* W
! a2 |9 H: G3 \( B8 I& y, s% M9.2插入排序$ \1 q! U( L1 ]2 D8 Y8 J
6 e7 y- k4 O5 y( V" |3 E' D7 |0 @9.2.1直接插入排序
( d* N5 {2 G3 T' g7 z3 h% v( h
) [1 s' b7 f$ I, z9.2.2二分插入排序9 j* K5 u; \' N3 j
' G" o# I$ X2 L, X7 H1 O& d+ l9.2.3Shell排序
; H9 h9 F" R0 v9 E
' l" u8 J+ `( Z2 G L; F I9.3交换排序+ }+ r4 `* ]5 o6 T4 t
! q5 M# \0 C" c& }( U, ~
9.3.1冒泡排序0 ?; `: P6 m0 H5 b) `
! n6 X9 D7 y( [! s
9.3.2快速排序1 Y- S* U5 ~8 x
. l( q/ {. J$ A
9.4选择排序% ]- j. I/ [3 o2 d5 Q
& Y9 y* M& E6 H0 H9 n- \5 y
9.4.1直接选择排序
* a5 G6 e% @' H2 {5 e u8 w
# z: `2 g0 M8 \" l0 a) c9.4.2堆排序( Q. y: q9 e. [+ }- }$ u1 u( ?8 q
) M- T" i' C* C" S
9.5归并排序
& e* Q @: u9 ]; h. F+ j/ c# t" _4 A) M% Q, D) Q0 a& ], F |9 f7 H
9.6外排序
: p+ M3 ]- [2 F7 K. R- o; R6 ?
3 ^' i3 I0 o# [9.6.1外排序的基本步骤2 `" R3 D$ C9 A- d/ P
6 l, v0 j' O& ~; [- Z. f) q5 P) D2 k
9.6.2败者树k?路归并算法; H2 ?! a1 G$ o% v; Z+ I1 M
0 S. M1 B4 G8 ^6 V8 y, N# q2 ?! m
9.6.3k?路归并算法实现" }+ J% K$ k6 f
/ _, e& M0 W( K5 O$ o本章小结
& U1 ~+ j5 E2 h, R: z
4 \( m, l1 ~ o第10章文件& w: K# ^2 V; s$ C
! `6 t7 l$ W4 `3 M
10.1文件及其分类
* X, _$ |8 J* p! e
: Y7 @( v* s, B/ k h M V: G Z10.1.1文件概述
3 h+ T- v3 t* k
5 j6 s. }6 C0 |+ S10.1.2文件结构与操作
* F7 @+ X I, U* O: w# g6 D, }3 I# r0 E
10.2顺序文件" K- E: X3 H F1 Y0 g; R
4 a' v6 K+ U1 n( Y# J- t; N10.2.1顺序文件存储结构
& X6 ^) Y0 q# W" @$ \3 x: u/ y5 l" R) q% Q: w1 U5 P) Z( X- w5 K
10.2.2顺序存储的实现3 ], T* R" r7 w0 ]! I
) v- ~& ^0 S/ E* M- V
10.3索引文件/ D9 K7 D# m/ {% m2 r8 {
/ `- r3 Z) c7 K+ g6 C: y6 }/ p
10.3.1索引表与索引文件
- I1 ~) O, l% g& x9 H! ~- p: o6 f! o3 C
10.3.2ISAM文件
4 }, d0 R B0 e# |2 Y$ u$ k4 @+ o# ~2 }9 N! x G3 V% V
10.3.3VSAM文件+ Y& P+ C+ W/ N& V) x* ?- S# }
0 Z4 {) {0 h- F3 f" w4 i
10.4动态索引B?树& M( E1 B6 X/ ^$ H H0 G4 `0 f( p
, E* Y9 ^$ C+ F l% S1 q
10.4.1B?树
; _( i- K0 d' C8 { I. O# i& K( W& F* V+ B3 O. d. _6 b
10.4.2B 树
E+ _& \$ [, e# z7 \& C" S% @; Z2 j, I: P2 w& ~
10.5散列文件
) I% ^% F' f4 ~4 S6 N1 I1 H) u0 e- }+ g+ G- w0 g2 F$ k
10.6多关键码文件" A/ b1 q2 I. a1 o) R k+ y( R& J
) o# J3 {3 H) r10.6.1多重表文件
* O0 {. @( G% t- @, w. E+ {" ?: e( r, V/ c
10.6.2倒排文件
! D0 P' N0 l4 \4 O4 ^9 ~7 E9 D- H4 y6 I
) e2 P; _/ U& {) X本章小结& Q# R& T1 x, A3 h* `4 Z! N1 {7 M
' x0 ^2 }/ g9 k) y* o7 Z
参考文献( B9 ^$ H/ P0 I- | C" y% w' R
* j/ Y9 e( \, I1 D! }4 c jJava资料百度网盘下载地址链接(百度云):java自学网(javazx.com) 数据结构与算法简明教程(Java语言版) PDF 高清 电子书 百度云.rar【密码回帖可见】
3 b- B+ h- T* v, W9 U6 K6 K: I$ A5 m# K# ~! x8 g1 {
9 q; `- Z) R2 _$ H9 `4 D. g% q1 |& Q% o9 f0 Q
: e! q# E& }# s) J( u2 E |
|