insertionsort

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • insertionsort

    Hallo

    Ich suche ein Beispiel für insertionsort. Im Internet finde ich zwar einige aber eben immer nur Delphi oder C++, aber für PHP finde ich leider nichts.
    Also wenn ihr einen Quelltext habt könnt ihr ihn ja mal posten

    THX
    Maik

  • #2
    schreibst doch selbst um, von C zu PHP ist der Unterschied so gering, dass
    man fast alles übernehmen kann.

    Kommentar


    • #3
      ich hab nur keinen plan von C++ aber okay i try it

      Kommentar


      • #4
        so hier ist der Code in C, 99% kannst du übernehmen, versuchst mal
        PHP-Code:
        /* Insertion sort for integers */

        void insertionint a[], int n ) {
        /* Pre-condition: a contains n items to be sorted */
            
        int ijv;
            
        /* Initially, the first item is considered 'sorted' */
            /* i divides a into a sorted region, x<i, and an
               unsorted one, x >= i */
            
        for(i=1;i<n;i++) {
                
        /* Select the item at the beginning of the
                   as yet unsorted section */
                
        a[i];
                
        /* Work backwards through the array, finding where v 
                   should go */
                
        i;
                
        /* If this element is greater than v,
                      move it up one */
                
        while ( a[j-1] > ) {
                  
        a[j] = a[j-1]; j-1;
                  if ( 
        <= ) break;
                  }
                
        /* Stopped when a[j-1] <= v, so put v at position j */
                
        a[j] = v;
                }
            } 
        Achtung: Call by reference!
        Zuletzt geändert von asp2php; 30.04.2004, 11:46.

        Kommentar


        • #5
          Hab noch ne andere Frage:
          Ist das hier Bubblesort??

          PHP-Code:
          for($x 0$x $array_size$x++) {
            for(
          $y 0$y $array_size$y++) {
              if(
          $ran[$x] < $ran[$y]) {
                
          $hold $ran[$x];
                
          $ran[$x] = $ran[$y];
                
          $ran[$y] = $hold;
              }
            }

          Denn bei Bubblesort werden doch alle werte die "hintereinander" stehen vergleichen und gegebenenfalls vertauscht.
          Hier wird aber doch der erste Wert genommen und dieser dann mit allen verglichen und dann vertauscht. Oder? Also was ist das dann hier

          Kommentar


          • #6
            ist kein Bubblesort, weil die innere Schleife immer bei 0 anfängt,
            und auch deswegen passt deinen Code nicht in irgendeinem mir
            bekannten Sortieralgorithmus.

            Kommentar


            • #7
              Original geschrieben von asp2php
              ist kein Bubblesort, weil die innere Schleife immer bei 0 anfängt,
              Ist trotzdem Bubblesort. OK, kann man jetzt drüber diskutieren, aber ich meine, das ist schon Bubblesort, nur 'pur', d.h. ohne jegliche Optimierungen. Und wenn man die innere Schleife nicht bei 0 anfangen lässt, kann man das schon als Optimierung bezeichnen.
              hopka.net!

              Kommentar

              Lädt...
              X