Auf Thema antworten

vielleicht hast du den falschen pseudocode erwischt.

Schau dir am besten mal den wikipedia eintrag an: https://de.wikipedia.org/wiki/Mergesort

[code]

funktion mergesort(liste);

  falls (Größe von liste <= 1) dann antworte liste

  sonst

     halbiere die liste in linkeListe, rechteListe

     linkeListe = mergesort(linkeListe)

     rechteListe = mergesort(rechteListe)

     antworte merge(linkeListe, rechteListe)


funktion merge(linkeListe, rechteListe);

  neueListe

  solange (linkeListe und rechteListe nicht leer)

  |    falls (erstes Element der linkeListe <= erstes Element der rechteListe)

  |    dann füge erstes Element linkeListe in die neueListe hinten ein und entferne es aus linkeListe

  |    sonst füge erstes Element rechteListe in die neueListe hinten ein und entferne es aus rechteListe

  solange_ende

  solange (linkeListe nicht leer)

  |    füge erstes Element linkeListe in die neueListe hinten ein und entferne es aus linkeListe

  solange_ende

  solange (rechteListe nicht leer)

  |    füge erstes Element rechteListe in die neueListe hinten ein und entferne es aus rechteListe

  solange_ende

  antworte neueListe

[/code]



Oben