Program sortujący

Program sortujący
A1
  • Rejestracja:ponad 9 lat
  • Ostatnio:12 miesięcy
  • Postów:32
0

Witam. Mam pewne zadanie do napisania lecz nie rozumiem do końca polecenia.
"Program ma umożliwiać porównanie co najmniej 3 różnych algorytmów sortujących zaimplementowanych na listach jednokierunkowych w tym algorytm QuickSort lub MergeSort. Zamiana elementów musi być realizowana przez zamianę wskaźników. Porównywane wartości to ilość zamian i ilość porównań wykonywana przez każdy z algorytmów. Dane do sortowania powinny być wczytywane z pliku, a posortowane zapisywane do pliku. Nazwy plików podaje użytkownik, w czasie działania programu lub jako jego parametry."
Nie rozumiem po co mam zaimplementować algorytmy na liście , i jak sortować za pomocą zamiany wskaźników (czy to po prostu jest straszna nazwa ,a sortowanie jest zwyczajne).

Shalom
  • Rejestracja:około 21 lat
  • Ostatnio:około 3 lata
  • Lokalizacja:Space: the final frontier
  • Postów:26433
0

Algorytmy na liście masz zaimplementować właśnie po to żeby przepinać wskaźniki a nie kopiować wartości.
Zamiast zamieniać wartości na zasadzie:

Kopiuj
int tmp = first;
first = second;
second = tmp;

Masz robić

Kopiuj
// zapamiętujesz sobie pomiędzy jakimi elementami w liście był pierwszy obiekt
int* prev = prev(first);
int* next = first.next;
// podmieniasz go z drugim obiektem w liście
prev(second) -> next = first;
first->next = second->next;
// wpisujesz drugi obiekt w miejsce pierwszego
prev->next = second
second->next = next;

"Nie brookliński most, ale przemienić w jasny, nowy dzień najsmutniejszą noc - to jest dopiero coś!"
A1
  • Rejestracja:ponad 9 lat
  • Ostatnio:12 miesięcy
  • Postów:32
0

Czyli jak zrozumialem , odczytuje plik , wrzuca jego elementy do listy , sortuje je a potem zapisuje w pliku , tak ?

_13th_Dragon
  • Rejestracja:ponad 19 lat
  • Ostatnio:5 dni
0

Prawie, bo tak trzy razy dal różnych algorytmów.


Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.
A1
  • Rejestracja:ponad 9 lat
  • Ostatnio:12 miesięcy
  • Postów:32
0

Czyli trzy listy. Okej dzięki.

_13th_Dragon
  • Rejestracja:ponad 19 lat
  • Ostatnio:5 dni
0

Nie, lista jedna.


Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.
A1
  • Rejestracja:ponad 9 lat
  • Ostatnio:12 miesięcy
  • Postów:32
0

No dobra , rozumiem.Tylko jednego nie kminie , czym są dane wczytane z pliku ? Jeżeli bedzie tam troche cyfr i troche wyrazów to w jaki sposob ma to posortować?

edytowany 1x, ostatnio: Adrian112
_13th_Dragon
  • Rejestracja:ponad 19 lat
  • Ostatnio:5 dni
0

Albo zapytaj prowadzącego albo sam załóż jakieś sensowne granice.


Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.