Dyskusja:Sortowanie przez scalanie


Dyskusja:Sortowanie przez scalanie w encyklopedii

Z Wikipedii, wolnej encyklopedii Przejdź do nawigacji Przejdź do wyszukiwania

Spis treści

Untitlededytuj kod

W jakim to języku jest napisane? Na pewno nie C...:

void merge(unsigned long start, unsigned long srodek, unsigned long stop) { TYP tab_out[stop-start+1]; 
Można przerobić na c++ i szablony, ale myślę że tak jest jaśniej.

Poprawnosć złożoności algorytmuedytuj kod

Czy aby na pewno wzór do obliczania złożoności czasowej jest poprawny, na pierwszy rzut oka widać już że liczba nawiasów się nie zgadza.

Błąd w algorytmieedytuj kod

Złożoność tak zaimplementowanej procedury merge jest w pesymistycznym przypadku kwadratowa (a powinna być liniowa). Dzieje się tak na przykład gdy w wszystkie elementy z pierwszej połowy tablicy są większe od wszystkich elementów z drugiej połowy tablicy. Aby to naprawić można użyć tablicy pomocniczej albo listy wskaźnikowej. Krzacz (dyskusja) 15:41, 15 lip 2010 (CEST)

Poprawiłem. Krzacz (dyskusja) 21:48, 19 lip 2010 (CEST)

(ze zgłoszenia błędu)edytuj kod

Podany przykładowy algorytm sortowania nie działa, zasadniczo nie ma nic wspolnego z algorytmem sortowania przez scalanie (merge sort). Zgłosił: LM 178.37.129.156 (dyskusja) 17:32, 7 gru 2010 (CET)

Wikimaratonedytuj kod

Na podstawie artykułu: "Dyskusja:Sortowanie przez scalanie" pochodzącego z Wikipedii
OryginałEdytujHistoria i autorzy