35

ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 2: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 3: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 4: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 5: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 6: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 7: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 8: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 9: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 10: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 11: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 12: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 13: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 14: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 15: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 16: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n
Page 17: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

14

1-2. )( ) (

n f n 1 21 31 41

51 61 91

1O 1 secn 1 secn 1 secn 1 secn 1 secn 1 secn 1 secn

lgn / secn3 3sec/ n6 6 / secn9 9sec/ n13 2sec/ n16 6/ secn19 9sec/ n29 9

n secn1 secn11 sec sec1 sec1secm1 1 sec

lgn n

lgn n

secn33 secn664 / sec9 9sec132/ secm1 6/ secm19 9/ sec29 9

2n secn1 sec1 1 secm secm1sec1 / min16 6 / yrs31 7

3n sec1 1 secm 1 sec min/16 6 / days11 6/ yrs31 7 yrs13 1

2 2n sec1 yrs134 1- - - - -

1-2-1

t n .

n .

» «.

.

: 1 2.

> < == .

.

.

) ( .3

4 .5

.

1. Comparative operators 2. Arithmetic operators

3 . .

4. Overhead 5 .

.

Page 18: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

: 29

2- 1

)1-15( f n O f n

3- )(2

)1-16( g n O h n f n O h n f n O g n

Big-O 3 4 ) .(

)1-17(

, m

f n O n f n O n

f n O n

f n O n m

2 3

4

2

)1-18( f n O n3 f n O n2

)1-19( log logf n O g n f n O g n

)1-20( f n O g n f n g nO2 2

1-20 f n n2 g n n .

)1-21( log loga bf n O f n

1-4-2

Big-Omega 5 .

f n g n f g .

:

)1-22( , | ; o of n g n c n n n f n c g n

:f g n c

n )on n( f n c g n .

Big-O .

Big-O Big-Omega

)

.(

1. Reflexivity 2. Transitivity 3. Antisymmetry 4. Symmetry 5. Lower bound

Page 19: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

44

:

11 1 3 .

- 000

1 001

2 010

1 011

3 100

1 101

2 110

1 111

m m O m

.

1-15. :

2

1 3

,

,

n nf n

n n

2 3

1

1

,

,

n nf n

n n

2 5

3/f n n

i j :

( i jf n O f n

( i jf n f n

1-16. O o

.

o O

1 13 3n n

23 3n

n

log ! log nn n

2sinnn

n ba n

loga bn n

Page 20: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

74

2-4 .

2-4 . n2 .

) . ( ) . ( 1n-

) . (

) . ( 2n-2 ) . (

.

2-1. 1 :

.

. .

2-2. 2-15 11

13 .

11 Hanoi( 2n - 2, C, A, B ); 12 MOVE ( A C ); 13 Hanoi( 2n - 1, B, A, C );

2-3. 2

.

2-4. logn

logn .

1. Restricted Tower of Hanoi puzzle 2. Merge-sort algorithm

Page 21: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

94

17. . g ( , )g x y x y

.:

( , , )f 8 3 ) - 85(

1 f( int a, int b, int c ) 2 {

3 int m =

a b

2 ; 4 if ( c > 0 ) 5 { 6 g( m, c ); 7 f( a, m, c � 1); 8 f( m, b, c � 1); 9 } 10 }

1(

2(

3(

4(

18. ( ) logT n T n n2 . ( )T n

) - 85(

1( ( ) (log log )T n O n

2( ( ) (log log log )T n O n n

3( ( ) ( log log )T n O n n

4( ( ) ( log log )T n O n n n

Page 22: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

134

3-16

1 ADD( A, B : SPARSE ) : SPARSE 2 { 3 if A.originRow B.originRow then 4 Error( �Matrix Mismatch� ); 5 if A.originColumn B.originColumn then 6 Error( �Matrix Mismatch� ); 7 var C : SPARSE; 8 CREATE(C, A.originRow, A.originColumn); 9 var indexC : integer; 10 indexC = 1; 11 var indexA, indexB : integer; 12 indexA = 1; 13 indexB = 1; 14 while indexA A.terms and indexB B.terms do 15 { 16 var rowA, colA, valA : integer; 17 var rowB, colB, valB : integer; 18 rowA = A.Data[indexA][1]; 19 colA = A.Data[indexA][2]; 20 valA = A.Data[indexA][3]; 21 rowB = B.Data[indexB][1]; 22 colB = B.Data[indexB][2]; 23 valB = B.Data[indexB][3]; 24 if (rowA, colA) < (rowB, colB) then 25 { 26 C.Data[indexC][1] = rowA; 27 C.Data[indexC][2] = colA; 28 C.Data[indexC][3] = valA; 29 indexA++; 30 indexC++; 31 } 32 else if (rowA,colA)>(rowB,colB) then 33 { 34 C.Data[indexC][1] = rowB; 35 C.Data[indexC][2] = colB; 36 C.Data[indexC][3] = valB; 37 indexB++; 38 indexC++; 39 } 40 else 41 { 42 C.Data[indexC][1] = rowA; 43 C.Data[indexC][2] = colA; 44 C.Data[indexC][3] = valA + valB; 45 indexA++; 46 indexB++; 47 indexC++; 48 } 49 } 50 while indexA A.terms do 51 { 52 var rowA, colA, valA : integer; 53 rowA = A.Data[indexA][1]; 54 colA = A.Data[indexA][2]; 55 valA = A.Data[indexA][3]; 56 C.Data[indexC][1] = rowA; 57 C.Data[indexC][2] = colA; 58 C.Data[indexC][3] = valA; 59 indexA++; 60 indexC++; 61 } 62 while indexB B.terms do 63 { 64 var rowB, colB, valB : integer; 65 rowB = B.Data[indexB][1]; 66 colB = B.Data[indexB][2]; 67 valB = B.Data[indexB][3]; 68 C.Data[indexC][1] = rowB; 69 C.Data[indexC][2] = colB; 70 C.Data[indexC][3] = valB; 71 indexB++; 72 indexC++; 73 } 74 return C; 75 }

Page 23: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

184

k64 19 k64 51 .

L 691

:

, , , , , , , , , , , 51 115 179 243 307 371 435 499 563 627 691 723

:

, , , , , 51 179 307 435 563 691

, , 179 435 691

,435 691

435

n 729 435 .

n 22 3 5

.

Page 24: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

204

5

1. 3 .

.

M R F .

F R ( )M n R F .

2. 4 .

4

.

: front .

front front) (

.

Page 25: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

224

6-13:

/ 5 3 4 1 7 2 :

x

2 2 ,PUSH S x

7 2 7 ,PUSH S x

14 ,

, ,

y POP S

y POP S z y y PUSH z1

2 1 2

7

2

1 14 1 ,PUSH S x

4 14 1 4 ,PUSH S x

14 3 ,

, ,

y POP S

y POP S z y y PUSH z1

2 1 2

4

1

3 14 3 3 ,PUSH S x

5 14 3 3 5 ,PUSH S x

14 3 5 ,

, ,

y POP S

y POP S z y y PUSH z1

2 1 2

5

3

/ 14 5 35

,

, / ,

y POP S

y POP S z y y PUSH z

A B

1

2 1 2

15

3

2

19 35

,

, + ,

y POP S

y POP S z y y PUSH z

A B

1

2 1 2

5

14

2

19 S .

.

6-13. .

1 Comb( n , m : integer ) : integer 2 { 3 if n == 1 or m == 0 or m == n then 4 return 1; 5 else 6 return Comb(n�1,m)+Comb(n-1, m - 1); 7 }

Page 26: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

234

7-4:

7-2 4 ) :a, d, h, g, z( :

( ) ( )height a height b4 2

( ) ( )height l height d 3

: .

1 : .

)7-2( ( ) ( )i iLevel n depth n 1

2 .

7-5 :

7-2 :

( )level a 1

( ) ( )level i level g 4

( )level z 5

( ) ( ) ( ) ( )level x level l level y level h 3

2 : .

7-6 :

7-2 b 7 2 .

k, j, i t 2 .

7-7 :

7-2 ) (

:

.

14 13 . 13

) ( .

.

3 : .

7-8 :

7-2 g, b, a t 3 2 1 .

1 :

.

1. Level 2. Sub-tree 3. Degree

Page 27: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

274

7

1. »4« .

n

n

n

n

2

1

. n 4 :

8

4 71454 1

2. »2« .

1 3 9 27 40

.27 .

3. »1« .

:

:

Preorder: ABDFGE Postorder: FGDEBA

Inorder: AFDGBE 4. »3« .

)LMC (

)Right Sibling ( .

.

5. »1« .

.

:

n 62 1 2 1 64 1 63

6. »1« .

T )

.(

Page 28: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

284

: ) (

.

. 3

.

8-1-2

1:

: .

DICTIONARY

. :

CREATE( ref D : DICTIONARY );

:

DICTIONARY .

: .

TRUE FALSE .

:

EMPTY( D : DICTIONARY ) : boolean;

2: .

. :

MAKENULL( ref D : DICTIONARY );

: .

:

INSERT( ref D : DICTIONARY; k : KeyType; x : DataType );

: KeyType

DataType .

ElementType

) ( .

1 . . 2 . Clear .

Page 29: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

304

8-17: lgn n

n lgn n .

.

8-18:

: A

B C

. a A b B c C

a b c .

8-19: n m .

O n m .

8-3

8-2

n

n .

n .

lgn

.

lgn .

8-2-4-2 1 .

. n

lgO n n .

.

.

.

.

- 2 .

1. Balanced BST 2. Self-balancing BST

Page 30: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

314

8-4-3 -

. - n

lgn . -

lgO n . -

x x .

- [1] .

-

. . -

lgn

lgn .

x - T x T

. x .

- . - lgO n

. -

[1] .

x - T x

T . . x

x .

.

- . - lgO n .

- [1] .

: -

. -

.

: -

O 1 .

8-5 2-3

2

- . 2-31 .

1. 2-3 tree

Page 31: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

334

8-1: .

1

2

n n O 1 O 1 n n n n n n 3

(lg )n(lg )nn n n n O 1 O 1 O 1 O 1

BST 4

(lg )nn (lg )nn (lg )n n (lg )nn (lg )nn AVL

5 (lg )n(lg )n(lg )n(lg )n(lg )n (lg )n(lg )n(lg )n(lg )n(lg )n

RB 6

(lg )n(lg )n(lg )n(lg )n(lg )n (lg )n(lg )n(lg )n(lg )n(lg )n

2-3

(lg )n(lg )n(lg )n(lg )n(lg )n (lg )n(lg )n(lg )n(lg )n(lg )n

( lg )t n( lg )t n( lg )t n( lg )t n( lg )t n ( lg )t n( lg )t n( lg )t n( lg )t n( lg )t n

( )O a1n O 1 O 1 ( )O a1 n n n n n

O1

1( )B O

11

( )B lnO1 1

1( )B n n n n

O 1 n O 1 O 1 O 1 n n n n n

8-1

.

.

8-40: 1 .

25 95 %

.

8-41: B . n

7 .

8-42: 5 28 19 15 20 33 12 17 10

. 9 mod h k k 9

.

8-43:

1. . 2. . 3 . . 4. . 5 . . 6 . - .

7. Expected value

Page 32: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

384

DFS

:

1 Const WHITE = 0; 2 Const GRAY = 1; 3 Const BLACK = 2; 4 5 Type VERTEX = Record 6 { 7 Color : 0..2; 8 Parent : integer; 9 } 10 Type GRAPH = Record 11 { 12 V : VERTEX[N]; 13 Adj : LIST[N]; 14 }

DFS ,G V E :

1 DFS( G : GRAPH ) 2 { 3 for u = 1 to |G.V| do 4 { 5 G.V[u].Color = WHITE; 6 G.V[u].Parent = NULL; 7 } 8 for u = 1 to |G.V| do 9 { 10 if G.V[u].Color == WHITE then 11 DFS-VISIT( G, u ); 12 } 13 } 14 15 DFS-VISIT( G : GRAPH; u : integer ) 16 { 17 var p : Position; 18 var v : integer; 19 20 G[u].Color = GRAY; 21 p = FIRST( G.Adj[u] ); 22 while p NULL do 23 { 24 v = RETRIEVE( G.Adj[u], p ); 25 if G.V[v].Color == WHITE then 26 { 27 G.V[v].Parent = u; 28 DFS-VISIT( G, v ); 29 } 30 p = NEXT( G.Adj[u], p ); 31 } 32 G.V[u].Color = BLACK; 33 }

Page 33: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

404

11-4-3

1( .

2( : ) 8 .(

3( : .

4( : 11-3 .

11-4-1

. 11-3

) 6 7 .(

11-3 8 .

5( : ( )n2.

11-5 1

.

2

.

)

( ( )O n2 .

11-4 .

11-4 . 16 .

.

1. Shell sort 2. Interleaved sublists

Page 34: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

434

18. .. A n1 k- i k i n k :

A i k A i A i k

1 4 2 6 3 7 5 8) ( 2- . 2-

N2 1-

) - 86(

1( N 2( 2 3( N 2 4( N2 1

19. HeapSort QuickSort MergeSort .

)stable ( ) - 88(

1( HeapSort MergeSort 2( MergeSort

3( QuickSort MergeSort 4( HeapSort QuickSort MergeSort

20. ) - 88(

1( Insertion sort) ( )n 1000 (

O n2 .

2( Merge sort) ( )n 1000 ( .

3( Heap sort) ( )n 1000 (

O n2 .

4( Quick Sort) ( )n 1000 (

O n2 .

21. ) - 88(

1( Quick sort) ( logO n n .

2( Merge sort) ( )n 1 (

.

3( Heap sort) ( logO n n .

4( Selection sort) ( logO n n .

22. A n .

) - 88(

1( quick sort 2( heap sort 3( insertion sort 4( merge sort

23. n

n

.

) - 88(

1( Insertion sort) ( 2( Merge sort) (

3( Bubble sort) ( 4( Heap sort) (

Page 35: ورود به سیستم dade va algoritmha... · 2018. 12. 3. · 14 ( ().2-1 n 1 f n 19 16 15 14 13 12 1 secn 1 1 secn1 secn 1 O 1 299/n sec199/n sec166/n sec132/n sec99/n sec 66/n

454

2:

1 n

.2

.

-1

.

) 3 (.

:

.

) (

.

-2

.

:

1( 4

2( 5

3( 6

1. Amortized analysis

2. . .

3. Amortized cost 4. Aggregate analysis 5. The accounting method (bank account analysis) 6. The potential method (physicist�s method)