Ai un vector si il vrei sortat! Iti suna cunoscut ? Cam de cand ai inceput sa programezi te lovesti de chestia asta. In unele limbaje, algoritmul e deja facut pentru tine. In schimb altele vor sa te mai chinui, asa ca ia si invata un algoritm de sortare simplu.
Cel mai simplu algoritm de sortare este cel prin interschimbare.
Algoritmul merge pe cea mai usoara varianta. Marele plus al acestui algoritm este ca e si usor de inteles si usor de retinut. Este parcurs vectorul de la primul element cu un for si se verfica cu un al doilea for daca elementele drin dreapta elementului curent sunt mai mici decat el. Cel de-al doilea for porneste de la elemntul curent (i) plus 1, deoarece ne intereseaza doar elementele din dreapta primului numar.
static void Main(string[] args) { int[] array = new int[] { 32, 12, 1, 2, 46, 21, 2, 3 };
for (int i = 0; i < array.Length - 1; i++)
{
for (int j = i + 1; j < array.Length; j++)
{
if (array[i] > array[j])
{
int aux = array[i];
array[i] = array[j];
array[j] = aux;
}
}
}
for (int i = 0; i < array.Length; i++)
{
Console.WriteLine(array[i]);
}
}
Acest algoritm este unul simplu, ceea ce de obicei in programare inseamna ca nu este si cel mai optim. Daca nu esti intrebat la interviuri, poti sa-l folosesti cu incredere pentru colectii mici. Codul sursa