.


:




:

































 

 

 

 





˳

'

'

 

 

while(i<N && a[i]!=x) i++;

if(i==N) '.

 

' (). , , .

// N , a[N+1]

a[N]=x; i=0;

while(a[i]!=x) i++;

 

 

 

( ).

, .

 

L___________m______________R

L=0; R=N-1; i=0; m=0;

while(L<=R && a[i]!=x)

{m=(L+R)/2;

if(a[m]==x) i=m, break;

else if(a[m]<x) L=m+1;

else R=m-1;

}

 

,

 

m. ½ , log. N/2 .

, ,

 

while(a[m]!=x && L<=R)

 

L<=R a[m]!=x 0.

, , a[m]!=x.

 

.

L=0; R=N-1; m=0;

while(L<=R)

{ m=(L+R)/2;

if(a[m]==x) i=m, break;

else if(a[m]<x) L=m+1;

else R=m-1;

}

if(a[R]!=x) ;

 

, L>=R ( ).

, R-L :

- L<R

- , L (m+1), R .

 

.

, 1 , :

 

= 1 + ( 1) * ( 1) / ( 1).

, .

 

char S[N] p[M], 0<M<=N. P S.

i, () P S. :

 

, ,

 

 

i=-1;

do

{ i++; j=0;//Q(i)

while(j<M&&S[i+j]=P[j])

{j++;}

} while(j!=M|| i=!(N-M));

j=M

!(N-M)-

. , N*N .

( , , )

i=0; j=0;

while(j<M && i<N)

{while(j>=0&& s[i]!=P[j])

{j=d;}

i++; j=j+d; //

}

 

 

1.3. 1

 

1. .

2. RND .

3. . .

4. RND . .

5. .

6. .

7. .

8. . .

9. .

10. 䒺 , , , .

11. , a b. a b .

12. , , .

13. , .

14. , .

15. , .

16. , . .

17. , .

18. ³ .

19. , .

20. , .

21. , 10 . , .

22. , 10 . , ( ) , .

23. , 10 . , .

24. , 10 . .

25. , 10 . , .

26. , 60 , Lat Tal.

27. , 60 , AD, , , , , .

28. , . , 1.

29. a1,,an,b1,,bm k. 1,,n k, , , k. b1,,bm 10.

30. ( , ..). MX[10],MY[8], MZ[6].

 

1.4. .

1. ?

2. ?

3. ?

4. .

 

 

2 в Ѳ

 

2.1 ֳ

 

.

 

2.2 ϳ

 

[1, .75-90; 2,.89-96; ].

, .

- , . , .

, , , ().

, , .

, .

( ) , , , . , .

Y, , Y. ( Y , ).

, - , .

( .)

:

;

n+1 ( n+1 ) n- n+2 ;

, f(x1,...,xn) n g(x1,...,xn,y) n+1 .

, , , . , .

. :

.

, , , , .( )

 

, .

. , , , . , , . '

, , .

: . , , (). , , . ,

, , . , , , . , . , N , N-1 , ( ). , , , , , , . , N-1 , , , , , . , , , , ... , , . , n .

, .

#include<iostream.h>

int k;

void Hanoy1 (char a,char b,char c,int n);

 

void main()

{

cout<< << \n;

cin>>k;

Hanoy1 ('A', 'C', 'B', k);// k A C B

cin>>k;

}

void Hanoy1 (char a,char b,char c,int n)

{int v;

v=n;

if (n==1)

cout<< << v<< << a<< <<b<<\n;

else

{Hanoy1 (a, c, b, n - 1); // n - 1 A C B

cout<< <<v<< << a<< << b<<\n;

Hanoy1 (c, b, a, n - 1); // n - 1 C B A

} }

 

2.3. 2.

 

1. . :

)

b)

2. . , :

()

3.

(, )

4.

()

5.

()

 

6.

(, )

7. .

8. () .

9. .

10. .

11. .

12. , ' .

13. , .

14. .

15. , .

16. q , . . b 0 . a>b. a,b,c c a b

(a,b)=(b,c)

17. , 볺 , .

18. , .

19. Գ (fn)

f0=f1=1; fn=fn-1+fn-2, f=2, 3....

Գ m (m>1).

20. S- Գ, 500. Գ .

21. a1,...,a30.

 

22. U0, U1, U2,... U0=0, U1=1, Ui+2=Ui+1+Ui.

S= Ui.

23. .

24. a1,...,a30, : a1=2, ai=a[i/2]+ai-1, (i=2,..., 30).

25. a1,...,a30.

26. a1,...,a30

27. , .

28. 1 + 1/2 + 1/3 + + 1/N .

29. k, l, m,

 

( ).

30. n. ', n, n+1,..., 2n , , . ( , ).

 

 

2.4. .

1. ?

2. .

3. ?

4. ?

 

3 в ̲

 

3.1 ֳ

. , .

 

3.2 ϳ

 

[1, .150-164;2,.110-114; ].

( ) ( ).

- , ' .

- , ' , ' (, ).

: . , , - 1<=i<=n , , f , .

, , .

, . , 4567776 7 if (a[i] <= a[i-1])

 

while(is)

{ is=0;

for (i=m+1; i<=n; i++)

if (a[i] <= a[i-1])

{ c=a[i];

a[i]=a[i-1];

a[i-1]=c;

is=1;

}

, , , .

, , , , , .

̳ : C- ; M- () .

, n*ln(n) ( ) , n2 ( ). n - .

, , n .

:

 

1) .

2)

3) .

 

. . .

 

, , .

" ". . , . , , .

, ( m n) . .

/* */

float * bubble(float * a, int m, int n)

{ char is=1;

int i;

float c;

while(is)

{ is=0;

for (i=m+1; i<=n; i++)

if (a[i] < a[i-1])

{ c=a[i];

a[i]=a[i-1];

a[i-1]=c;

is=1;

} } return(a); }

 

 

3.3. 3.

 

, , .

: ..

 

3.4.

1. ?

2. ?

3. ?

4. ' ?

5. ?

 

 

4. в Բ. .

 

4.1 ֳ

, .

 

4.2.ϳ

 

. , .

 

( ) ( ) .

 

= . .

.

 

.

, , - , , .

.

 

,

 

, , .

, - , - ' . , .

, , . .

, .

, , .

, , .

:= ,

. , .

, , .

.

,

 

1,

0,

( )

, ,

. .

, .5.1.

 

4.3. 4.

.

 

     
     
     
     
     
     
     
     
     
     

 

4.4. .

 

1. .

2. ?

3. .

4. ?

5. ?

 

5.в Բ. .

 

5.1.

, .

5.2.ϳ

 

.

 

, ' , . , .

, .

, ( ), | V |×| V |, :

 

 
 


,

= Weight(vi, vj), i <> j, (vi, vj);

, i <> j, () (vi, vj).

 

 

 

: G =(V, E) (). , () , .

:

1. D0 | VV |, :

dii0 = 0;

dij0 = Weight(vi, vj), i <> j, (vi, vj);

dij0 =+, i <> j, () (vi, vj).

2. m:=0.

:

1. Dm+1 Dm, :

dijm+1 =min{ dijm, di(m+1)m + d(m+1)jm }, i <> j; diim+1=0 (*).

dimm + dmim < 0 i, () , vi; ղ.

2. m:= m +1; m <| V |, (1),

D | V | ;

ղ.

ʲ

, P pij = i. , (1) dijm+1 (*) ( di(m+1)m + d(m+1)jm < dijm), pij:= p(m+1)j. P : pij i j ( pij = i, ).

: - , Dm , , ( ) .

 

 

{int c[p][p];//

int t[p][p];//

int h[p][p];//

for(int i=0;i<p;i++)

for(int j=0;j<p;j++)

cin>> c[i][j];

for(int i=0;i<p;i++)

for(int j=0;j<p;j++)

{ t[i][j]=c[i][j];

if(c[i][j]==555) h[i][j]=0; // i j

else h[i][j]=j;// i j

}

for(int i=0;i<p;i++)

{ for(int j=0;j<p;j++)

for(int k=0;k<p;k++)

if(i!=j&&t[j][i]!=555&& i!=k && t[i][k]!=555 &&

(t[j][k]==555 ||t[j][k]>t[j][i]+t[i][k]))

{h[j][k]=h[j][i];// '

t[j][k]=t[j][i]+t[i][k];// '

}

for(int j=0;j<p;j++)

if(t[j][j]<0)break;

}

}

 

 

5.3. 5.

5, , , .

 

5.4. .

 

1. ?

2. ?

3. ?

4. ?

 

6.в в Ͳ.

 

6.1.

.

 

 

6.2.ϳ

, , .

 

.

. , . . ֳ .

.

 

Procedure Tttt; (**)

Begin

Repeat

If then

;

If then

Tttt(i+1);

If then

End;

End;

End;

Until OR ;

End;

 

//

//

const int dx[8]={2,1,-1,-2,-2,-1, 1, 2};

const int dy[8]={1,2,2, 1,-1,-2,-2,-1};

const int nx=15; int h[15][15];

void move (int i,int x, int y,bool &q);

void ShowDesk(int dk[ ][nx],int nx);

int n;

void main(void)

{

bool nq; char ch;

cout<<" : "<<'\n';

cin>>n;

h[i][j]=1; //

nq=false;

move(2,i,j,nq);

}

void move (int ii,int x, int y,bool &q)

{int k,u,v;

bool q1;

k=0;

if(q==true) return;

do

{if (k<8) k++;

else k=0;

q1=false;

u=x+dx[k];

v=y+dy[k];

if(u>=0&&u<n&&v>=0&&v<n&&h[u][v]==0)

{h[u][v]=ii;

if(ii<n*n){ move(ii+1,u,v,q1);}

else{q=q1=true;return;}

if(q1==true) {q=q1;return;}

h[u][v]=0;

} }

while(k<8);

q=q1;

}//move

: 5

 

г:0,0 (Y/N)?y 1 20 15 8 3 14 9 2 21 16 19 22 13 4 7 10 5 24 17 12 23 18 11 6 25   г:3,1 (Y/N)?y 25 16 11 4 23 10 5 24 17 12 15 18 9 22 3 6 1 20 13 8 19 14 7 2 21   (Y/N)?y г:4,0 (Y/N)?y 25 22 17 10 5 16 11 6 23 18 21 24 15 4 9 12 7 2 19 14 1 20 13 8 3  
г:4,4 (Y/N)?y 25 20 9 14 3 8 15 4 19 10 21 24 13 2 5 16 7 22 11 18 23 12 17 6 1      

 

6.3. 6.

 

1-3. . 3 , , 9 , (.7.1. .7.3.).

4. . ' . . , . , (.7.22.)

5-8. . (.7.4. .7.8.).

 

 

9-12. . (.7.9. .7.11.).

 

 

13-16. . (.7.12. .7.15.).

 

 

 

17. , .

18. , .

19. . , , (). , . , .

20. . . .

21. . . .

 

22. . 8 , (). , , . . . 33 .

23. . 10 , (). , , . . . 49 .

24. . 21 , (). , , . . . 321 .

25. .16. , , . , , - , , 1 3, 6 8. , (.7.16.).

26. 49 (.7.17.). . , , 쳺 , , , .

 

 

 

27-30. , {1,...,5} {6,,10}... ³ . (.7.18. 7.21.).

 

 

 

6.4.

1. , .

2. .

3. ?

4. , ?

 

 

7.в ֲ̲ ʲ .

 

7.1.

. .

 

 

7.2.ϳ

. .

. 1962.

, .

, ( ), .

, SX, , , . S t . AD, .

 

: , C[u][v]

, .

: ,

 

BEGIN

for

for

if(F[u][v]<C[u][v]){CX[u][v]=C[u][v]-F[u][v];//

AD[u][v]=1;}

else {CX[u][v]=F[u][v];

AD[u][v]=-1;}//

End for(v)

S t .

if PRZ==0

//(PRZ - - F )

else

{DELE min{CX[u][v];u,v WAY}

for

if (AD[u][v]==1) F[u][v]= F[u][v]+DEL;

else F[u][v]= F[u][v]-DEL;

End for(u)

END

 

 

S t .

: ;

: ,

 

//Begin

//

//

=0 // S t

While (!=0)

{

- -

, ,

if (!=0) // ,

{{ =1

}

ʲ

}

}

ʲ

 

 

7.3. 7.

 

. , :

 

void maxfl (int N, int M[N][N], int F[N][N], int C[N][N], int FM[N][N]);

N

M

C

F

FM .

 

,





:


: 2016-09-06; !; : 1089 |


:

:

- , - .
==> ...

1669 - | 1588 -


© 2015-2024 lektsii.org - -

: 0.619 .