Algoritmi Combinatoriali

Proiect
9/10 (2 voturi)
Domeniu: Calculatoare
Conține 2 fișiere: doc
Pagini : 36 în total
Cuvinte : 5535
Mărime: 41.77KB (arhivat)
Puncte necesare: 0

Extras din proiect

ALGORITMI COMBINATORIALI

In foarte multe aplicatii ale matematicii se cere determinarea numarului de elemente ale unor multimi, numarul submultimilor unei multimi satisfacand anumite proprietati sau numarul modalitatilor de dispunere a elementelor multimii intr-o ordine specificata:

Anumite probleme de numarare apar frecvent in aritmetica, geometrie, teoria numerelor, probabilitati, statistica.

In cursul dezvoltrii matematicii s-a conturat o noua ramura a acesteia, care se ocupa cu aspectele ridicate de operatia de numarare:combinatorica.

Permutarile unei multimi

Fie A={a1, a2, &, an} o multime finita cu n elemente.Multimea A se poate ordona in mai multe moduri.

Definitie

Se numeste permutare a multimii A oricare multime ordonata care se formeaza cu cele n elemente ale acesteia.

Numarul permutarilor unei multimi cu n elemente se noteaza Pn.

Convenim ca multimea vida se poate ordona intr-un singur mod si

P0=1.

Calculul numerelor Pn

Pentru o multime cu un element A1={a1} evident P1=1.

Fie A2={a1, a2} o multime cu doua elemente.Se pot forma doua multimi ordonate (a1,a2) si (a2,a1), deci P2=2.

Fie A3={a1, a2, a3}.Permutarile multimii A3 se pot obtine din permutarile multimii A2, prin completarea acestora cu elementul a3. Astfel, din (a1,a2) se obtin permutarile (a1, a2, a3);(a1, a3, a2) ;(a3, a2, a1) iar din (a2, a1) se obtin permutarile (a2, a1, a3);(a2, a3, a1);(a3, a2, a1). In concluzie, pentru fiecare permutare cu doua elemente corespund trei elemente si P3=3*P2=3*2=6.

Aceasta observatie permite sa stabilim relatia generala: Pn=nPn-1, ne1 (1)

Intr-adevar, fiecare permutare cu n-1 elemente (a1, a2,&an-1) poate fi completata adaugand elementul an in n moduri:

(a1, a2,&,an-1, an); (a1,a2,&,an-2,an,an-1); &; (an, a1,&,an-1).

Folosind relatia (1) se obtine:

Pn=n*Pn-1=n*(n-1)*Pn-2=&=n(n-1)(n-2)&3*3*1, deci:

Pn=1*2*3*&*(n-1)*n.

Se foloseste notatia: 1*2*3*&*(n-1)*n=n! care se citeste n factorial.

Sa se genereze permutarile unei multimi cu n elemente.

Program

#include<stdlib.h>

#include<conio.h>

#include<stdio.h>

int n,k,x[10],contor,m;

int gasit,pos;

int posibil(int k)

{

for(int i=1;i<=k-1;i++)

if(x[i]==x[k]) return(0);

return(1);

}

void afisare()

{ // m=coloane

contor++;

if (contor>24) {

contor=1;

m++;

if(m==3) {

m=0;

getch();

clrscr();

}

}

gotoxy(10+20*m,contor);

for(int i=1;i<=k;i++)

printf("%d ",x[i]);

printf("n");

}

Preview document

Algoritmi Combinatoriali - Pagina 1
Algoritmi Combinatoriali - Pagina 2
Algoritmi Combinatoriali - Pagina 3
Algoritmi Combinatoriali - Pagina 4
Algoritmi Combinatoriali - Pagina 5
Algoritmi Combinatoriali - Pagina 6
Algoritmi Combinatoriali - Pagina 7
Algoritmi Combinatoriali - Pagina 8
Algoritmi Combinatoriali - Pagina 9
Algoritmi Combinatoriali - Pagina 10
Algoritmi Combinatoriali - Pagina 11
Algoritmi Combinatoriali - Pagina 12
Algoritmi Combinatoriali - Pagina 13
Algoritmi Combinatoriali - Pagina 14
Algoritmi Combinatoriali - Pagina 15
Algoritmi Combinatoriali - Pagina 16
Algoritmi Combinatoriali - Pagina 17
Algoritmi Combinatoriali - Pagina 18
Algoritmi Combinatoriali - Pagina 19
Algoritmi Combinatoriali - Pagina 20
Algoritmi Combinatoriali - Pagina 21
Algoritmi Combinatoriali - Pagina 22
Algoritmi Combinatoriali - Pagina 23
Algoritmi Combinatoriali - Pagina 24
Algoritmi Combinatoriali - Pagina 25
Algoritmi Combinatoriali - Pagina 26
Algoritmi Combinatoriali - Pagina 27
Algoritmi Combinatoriali - Pagina 28
Algoritmi Combinatoriali - Pagina 29
Algoritmi Combinatoriali - Pagina 30
Algoritmi Combinatoriali - Pagina 31
Algoritmi Combinatoriali - Pagina 32
Algoritmi Combinatoriali - Pagina 33
Algoritmi Combinatoriali - Pagina 34
Algoritmi Combinatoriali - Pagina 35
Algoritmi Combinatoriali - Pagina 36

Conținut arhivă zip

  • Algoritmi Combinatoriali.doc
  • 1.doc

Alții au mai descărcat și

Arhitectura calculatoarelor - Intel vs AMD

Rezultatele din testul 3DS Max 7 SPECapc Test Testul alaturat consta in crearea modelelor 3D, modificarea si randarea scripturilor. Conform...

Autentificarea prin semnătură digitală

Introducere O semnatura digitala reprezinta o informatie care il identifica pe expeditorul unui document. Semnatura digitala este creata prin...

Sistem de Prognosticare a Unei Avarii

Acest sistem calculeaza gradul de avariere a unei cladiri în cazul unui cutremur, precum si posibila necesitate a reconstructiei cladirii (partiala...

Te-ar putea interesa și

Proiectarea și Optimizarea Problemelor de Programare Semidefinită

Acest proiect de diplomă a fost implementat pentru proiectarea şi optimizarea problemelor de programare semidefinită, care mai apoi poate fi...

Optimizare combinatorială

O problema de optimizare (adica o functie de mai multe variabile care trebuie maximizata sau minimizata cu satisfacerea unui set finit de...

Implementarea algoritmilor evolutivi

Conceptul de evoluţie a fost propus de savantul englez Charles Darwin în 1859 în celebra sa carte “Originea speciilor prin selecţie naturală”....

Algoritmi Genetici

1 Introducere în calculul evolutiv În general, orice sarcina abstracta care trebuie îndeplinita, poate fi privita ca fiind rezolvarea unei...

Bioinformatică

Biodiversitatea", cuprinde o varietate de forme de viaţă de pe planetă, se întinde de la gene la speciile pentru ecosisteme (Wilson, 1988)....

Tehnici Evoluate de Conducere

Calcul evolutiv. Principiile calculului evolutiv Este inspirat de procesele de evolutie din natura bazate pe principiile ereditatii si a...

Sistem inteligent pentru dezvoltarea câmpurilor petroliere

Capitolul I: Proces economic. Tehnologii inteligente Domeniul inteligenţei artificiale, sau IA, îşi propune să inţeleagă entităţile inteligente....

Aplicații algebrice - Turbo Pascal

APLICATIA APLICATII ALGEBRICE – ALGORITMI COMBINATORIALI I. INSTRUCTIUNI TURBO PASCAL Sunt urmatoarele: - Instructiunea de atribuire -...

Ai nevoie de altceva?