Witajcie!
Mam za zadanie porównać kilka rodzajów sortowania, czyli wypisać je powiedzmy jedno po drugim z czasami tego, ile to się robi.
Do tego zadania tworzę na początku zwykła tablicę tab[], w której są wpisane liczby do posortowania.
Gdy sortuję pierwszą metodą(wstawianie) używając funkcji własnej to zmienia mi się też ta główna tablica, w funkcji głównej.
Jak sprawić, żeby ta tablica w funkcji głównej się nie zmieniała?
Wygląda to na ten moment mniej więcej tak, że najpierw robię w main() tablicę tab[10], wpisuję w nią 10 liczb i potem piszę:
Wstawianie (tab,10); // żeby odwołać się do funkcji własnej pokazanej poniżej
void Wstawianie( int tob[], int size )
{
int temp, j;
for( int i = 1; i < size; i++ )
{
temp = tob[ i ];
for( j = i - 1; j >= 0 && tob[ j ] > temp; j-- )
tob[ j + 1 ] = tob[ j ];
tob[ j + 1 ] = temp;
}
cout<<endl;
for (int z=0;z<size;z++)
{
cout<<tob[z]<<" ";
}
}
I potem to tab też jest posortowane. Jak zrobić, żeby tamto zostało tak, jak było na początku, nieposortowane?
Z góry dziękuję za odpowiedź, ewentualnie podesłanie jakiegoś linku (nie mogę sam znaleźć nic takiego.)