www.vorkurse.de
Ein Projekt von vorhilfe.de
Die Online-Kurse der Vorhilfe

E-Learning leicht gemacht.
Hallo Gast!einloggen | registrieren ]
Startseite · Mitglieder · Teams · Forum · Wissen · Kurse · Impressum
Forenbaum
^ Forenbaum
Status Mathe-Vorkurse
  Status Organisatorisches
  Status Schule
    Status Wiederholung Algebra
    Status Einführung Analysis
    Status Einführung Analytisc
    Status VK 21: Mathematik 6.
    Status VK 37: Kurvendiskussionen
    Status VK Abivorbereitungen
  Status Universität
    Status Lerngruppe LinAlg
    Status VK 13 Analysis I FH
    Status Algebra 2006
    Status VK 22: Algebra 2007
    Status GruMiHH 06
    Status VK 58: Algebra 1
    Status VK 59: Lineare Algebra
    Status VK 60: Analysis
    Status Wahrscheinlichkeitst

Gezeigt werden alle Foren bis zur Tiefe 2

Navigation
 Startseite...
 Neuerdings beta neu
 Forum...
 vorwissen...
 vorkurse...
 Werkzeuge...
 Nachhilfevermittlung beta...
 Online-Spiele beta
 Suchen
 Verein...
 Impressum
Das Projekt
Server und Internetanbindung werden durch Spenden finanziert.
Organisiert wird das Projekt von unserem Koordinatorenteam.
Hunderte Mitglieder helfen ehrenamtlich in unseren moderierten Foren.
Anbieter der Seite ist der gemeinnützige Verein "Vorhilfe.de e.V.".
Partnerseiten
Weitere Fächer:

Open Source FunktionenplotterFunkyPlot: Kostenloser und quelloffener Funktionenplotter für Linux und andere Betriebssysteme
Forum "Algorithmen und Datenstrukturen" - Quicksort
Quicksort < Algor.+Datenstr. < Theoretische Inform. < Hochschule < Informatik < Vorhilfe
Ansicht: [ geschachtelt ] | ^ Forum "Algorithmen und Datenstrukturen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien

Quicksort: Klausuraufgabe
Status: (Frage) beantwortet Status 
Datum: 21:01 Mo 31.01.2011
Autor: bobbert

Aufgabe
Sortieren Sie die Zahlenfolge  8 5 4 4 2 9 6  nach der Methode des Quicksort. Stellen Sie die Abeitsweise des Algortihmus dar, in dem Sie jeweils das Ergebnis eines rekursiven Durchlaufs in eine neue Zeile schreiben. Kreisen Sie das Pivotelement ein und markieren Sie die betrachtete Teilfolge. Notieren Sie außerdem neben der Zeile, welche Wlemente in der Zeile jeweils miteinander getauscht wurden.

Ansatz:  

            
[mm] \vmat{ & & &P & & \\8 &5 &4 &[u]4[/u]& 2 &9 &6\\i & & & & & &j} [/mm] //Pivot (P) frei nach Schnauze ausgewählt
        
                                                                                        

[mm] \vmat{2& 5& 4& [u]4[/u]& 8& 9& 6\\ & i & & j& & &} [/mm]       // Tausch : 2 , 8
  
[mm] \vmat{2& [u]4[/u]& 4& 5& 8& 9& 6\\ & i_j & & & & &} [/mm]          //Tausch (T): 4 ,5 danach 4 mit sich selbst
                  
[mm] \vmat{2 & [u]4[/u] \\i &j } [/mm]   // [mm] \*^1) [/mm] Warum fängt der Algorithmus zuerst mit der linken Seite an und nicht der rechten?
            

[mm] \vmat{2 & [u]4[/u] \\ & i_j } [/mm]  // T: 4 mit sich selbst
        
                      [mm] \vmat{ 5 &[u]8[/u]& 9& 6\\&i & &j} [/mm]  //Pivot willkürlich gewählt
                    
                       [mm] \vmat{ 5 & 6& 9& [u]8[/u] \\ & & i_j& } [/mm] //Tausch: 8, 6
                                
              [mm] \vmat{ 5& [u] 6[/u]} [/mm]  //Tausch 6 mit sich selbst
                                
                                         [mm] \vmat{[u]9[/u] & 8 } //\*^2: [/mm] Wieso ist 8 nicht nach dem Prinzip des Algorithmus alleine?   Natürlich würde dann 8 nicht in richtiger Reihenfolg sein. Dachte aber,  dass das Array an der Überschneidungszahl (Ü) geteilt wird und Ü nicht in ein weiteres array gespeichert wird.
                                          
                                        [mm] \vmat{8&[u]9[/u] } [/mm]    //8 mit 9  fertig



Fragen: [mm] \*^1 [/mm]  & [mm] \*^2 [/mm] (SIEHE OBEN)

              


        
Bezug
Quicksort: Antwort
Status: (Antwort) fertig Status 
Datum: 22:14 Mo 31.01.2011
Autor: felixf

Moin!

> Sortieren Sie die Zahlenfolge  8 5 4 4 2 9 6  nach der
> Methode des Quicksort. Stellen Sie die Abeitsweise des
> Algortihmus dar, in dem Sie jeweils das Ergebnis eines
> rekursiven Durchlaufs in eine neue Zeile schreiben. Kreisen
> Sie das Pivotelement ein und markieren Sie die betrachtete
> Teilfolge. Notieren Sie außerdem neben der Zeile, welche
> Wlemente in der Zeile jeweils miteinander getauscht
> wurden.
>  Ansatz:  
>
>
> [mm]\vmat{ & & &P & & \\8 &5 &4 &[u]4[/u]& 2 &9 &6\\i & & & & & &j}[/mm]
> //Pivot (P) frei nach Schnauze ausgewählt
>          
>
>
> [mm]\vmat{2& 5& 4& [u]4[/u]& 8& 9& 6\\ & i & & j& & &}[/mm]       //
> Tausch : 2 , 8
>
> [mm]\vmat{2& [u]4[/u]& 4& 5& 8& 9& 6\\ & i_j & & & & &}[/mm]          
> //Tausch (T): 4 ,5 danach 4 mit sich selbst

Kann es sein, dass das Pivotelement nachher die zweite Vier ist? Nach dem letzten Tauschen?

> [mm]\vmat{2 & [u]4[/u] \\i &j }[/mm]   // [mm]\*^1)[/mm] Warum fängt der
> Algorithmus zuerst mit der linken Seite an und nicht der
> rechten?

Gegenfrage: warum nicht? Es ist doch voellig egal, welche Seite zuerst sortiert wird, da zwischen den beiden Seiten keine Interaktion mehr besteht.

Der Beispiel-Code auf Wikipedia faengt z.B. auch mit der linken Seite an.

> [mm]\vmat{2 & [u]4[/u] \\ & i_j }[/mm]  // T: 4 mit sich selbst
>
> [mm]\vmat{ 5 &[u]8[/u]& 9& 6\\&i & &j}[/mm]  //Pivot willkürlich gewählt
>                      
> [mm]\vmat{ 5 & 6& 9& [u]8[/u] \\ & & i_j& }[/mm] //Tausch: 8, 6
>
> [mm]\vmat{ 5& [u]6[/u]}[/mm]  //Tausch 6 mit sich selbst
>
> [mm]\vmat{[u]9[/u] & 8 } //\*^2:[/mm] Wieso ist 8
> nicht nach dem Prinzip des Algorithmus alleine?  
> Natürlich würde dann 8 nicht in richtiger Reihenfolg
> sein. Dachte aber,  dass das Array an der
> Überschneidungszahl (Ü) geteilt wird und Ü nicht in ein
> weiteres array gespeichert wird.

Das ist schon etwas komisch, weil oben ja die zweite Vier weggelassen wurde.

Wie genau sieht der Pseudocode vom Algorithmus aus? Ohne den lassen sich hier nicht wirklich Aussagen treffen, und insbesondere kann man deine Frage so nicht beantworten.

LG Felix


Bezug
Ansicht: [ geschachtelt ] | ^ Forum "Algorithmen und Datenstrukturen"  | ^^ Alle Foren  | ^ Forenbaum  | Materialien


^ Seitenanfang ^
www.vorkurse.de
[ Startseite | Mitglieder | Teams | Forum | Wissen | Kurse | Impressum ]