Witajcie, chciałbym zapytać jaki jest najlepszy sposób na posortowanie listy jednokierunkowej? Wydaje mi się, że standardowe algorytmy odpadają, będą dość zagmatwane - dla każdej pary elementów, które zamieniamy musimy pamiętać dwa wskaźniki. Wymyśliłem, że najlepiej będzie jeśli za każdym razem będę wyszukiwał w liście element najmniejszy/największy i robił to do momentu aż będzie pusta. Kolejno znalezione elementy tworzyłyby nowa listę, do której początku zwracałbym poprzez funkcję sortującą wskaźnik.
0
0
do list pasują radix i merge.
0
a co sądzisz o mojej metodzie? wydaje mi się, że ma liniową złożoność
0
Sortowanie o liniowej złożoności nie może istnieć w naturze. "Twoja" ma złożoność kwadratową i nazywa się selection sort.
0
@d0x najprosciej i najwygodniej merge-sortem.