Documente Academic
Documente Profesional
Documente Cultură
Cuprins.
VISUAL C# ............................................................................................................................................................. 1
SORTAREA UNOR VECTORI ..................................................................................................................................... 1
1) Necesitatea sorțarii unui vector? .................................................................................................................. 2
2) Descrierea proiectului. ................................................................................................................................... 2
3) Descrierea tehnologiilor folosite. .................................................................................................................. 2
- Microsoft Visual Studio profesional 2012 ( Visual C# ) ............................................................................. 2
4) Crearea proiectului in Visual C#. ................................................................................................................. 2
5) Quick Sort. ....................................................................................................................................................... 3
6) Bubble Sort . .................................................................................................................................................... 4
7) Merge Sort. ...................................................................................................................................................... 5
7) Prezentarea programului. .............................................................................................................................. 6
UNIVERSITATEA “AUREL VLAICU” DIN ARAD
FACULTATEA DE STIINŢE EXACTE
DOMENIUL INFORMATICĂ
2) Descrierea proiectului.
Realizați o aplicație C# în Windows Form Application astfel: sa se vizualizeze mai multe tiputi de sortare.
Bubble Sort [interschimbare]
Quick Sort [partitionare]
Merge Sort [interclasare]
.
Din fereastra „New Project” selectam „Visual C#” si după aceea „Windows Form Application”.
Page 2
UNIVERSITATEA “AUREL VLAICU” DIN ARAD
FACULTATEA DE STIINŢE EXACTE
DOMENIUL INFORMATICĂ
5) Quick Sort.
Descriere :
Quick Sort este unul dintre cei mai rapizi si mai utilizati algoritmi de sortare pana in acest
moment,bazandu`se pe tehnica "divide et impera".Desi cazul cel mai nefavorabil este O(N^2)
,in practica,QuickSort ofera rezultate mai bune decat restul algoritmilor de sortare din clasa
"O(N log N)".
int[] numbers = { num1, num2, num3, num4, num5, num6, num7, num8, num9, num10 };
int len = 10;
QuickSort_Recursive(numbers, 0, len - 1);
///program that uses increment loop
for (int i = 0; i < numbers.Length; i++)
{
this.textBoxRezultat.Text += numbers[i].ToString() + ", ";
}
// sursa http://www.softwareandfinance.com/CSharp/QuickSort_Recursive.html
static public void QuickSort_Recursive(int[] arr, int left, int right)
{
// For Recusrion
if (left < right)
{
int pivot = Partition(arr, left, right);
if (pivot > 1)
QuickSort_Recursive(arr, left, pivot - 1);
Page 3
UNIVERSITATEA “AUREL VLAICU” DIN ARAD
FACULTATEA DE STIINŢE EXACTE
DOMENIUL INFORMATICĂ
6) Bubble Sort .
Descriere :
Sortarea prin metoda bulelor se considera drept una din cele mai puțin efective metode de
sortare dar cu un algoritm mai puțin complicat.
Ideea de baza a sorțarii prin metoda bulelor este in a parcurge tabloul de la stanga spre dreapta,
fiind comparate elementele alăturate a[ i ] si a[i+1]. Daca vor fi gasite 2 elemente neordonate
valorile lor vor fi interschimbate.
Parcurgerea tabloului de la stingă spre dreapta se va repeta atat timp cat nu vor fi întâlnite
elemente neordonate.
int[] numbers = { num1, num2, num3, num4, num5, num6, num7, num8, num9, num10 };
int temp;
Page 4
UNIVERSITATEA “AUREL VLAICU” DIN ARAD
FACULTATEA DE STIINŢE EXACTE
DOMENIUL INFORMATICĂ
7) Merge Sort.
Descriere :
In cazul sortarii prin interclasare vectorii care se interclaseaza sunt doua secvente ordonate
din acelasi vector.
Sortarea prin interclasare utilizeaza metoda Divide et Impera:
- se imparte vectorul in secvente din ce in ce mai mici., astfel incat fiecare secventa sa fie
ordonata la un moment dat si interclasata cu o alta secventa din vector corespunzatoare.
- practic interclasarea va incepe cand se ajunge la o secventa formata din doua elemente.
Aceasta odata ordonata se va interclasa cu o alta corespunzatoare. Cele doua secvente vor
alcatui in subsir ordonat din vector mai mare care la randul lui se va interclasa cu subsirul
corespunzator s.a.m.d.
int[] numbers = { num1, num2, num3, num4, num5, num6, num7, num8, num9, num10 };
int len = 10;
MergeSort_Recursive(numbers, 0, len - 1);
Page 5
UNIVERSITATEA “AUREL VLAICU” DIN ARAD
FACULTATEA DE STIINŢE EXACTE
DOMENIUL INFORMATICĂ
7) Prezentarea programului.
Programul este ușor de utilizat cu o interfața prietenoasa.
Numerele se vor introduce in căsuțele textbox si apăsând pe butoanele de mai jos putem testa fiecare algoritm
prezentat.
Bibliografie:
Sursa: https://www.worldit.info/files/Studiu%20asupra%20algoritmilor%20de%20sortare.pdf , Studiu asupra
algoritmilor de sortare, Avădănei Andrei .
Web:
http://www.softwareandfinance.com/CSharp/Bubble_Sort.html
http://www.softwareandfinance.com/CSharp/MergeSort_Recursive.html
http://www.softwareandfinance.com/CSharp/MergeSort_Iterative.html
http://www.softwareandfinance.com/CSharp/QuickSort_Recursive.html
http://www.softwareandfinance.com/CSharp/QuickSort_Iterative.html
Page 6