Veröffentlicht 16. September 200322 j ich bin mir nicht sicher aber ich glaube ich habe in dem programmabschnitt eine endlosschleife drinne. schaut mal bitte drüber, bräuchte da dringend hilfe ! danke und schöne grüße, wiesel. void Quick::quicksort(int von, int bis) { int pivot = Array[(von+bis) / 2]; int temp = 0; int l = von; int r = bis; while (l < r) { while (Array[l] < pivot) { l++; } while (Array[r] > pivot) { r--; } if (l < r) { temp = Array[r]; Array[r] = Array[l]; Array[l] = temp; } } if (von < r) { quicksort(von, r); } if (bis > l) { quicksort(l, bis); } }
19. September 200321 j Natürlich ist da eine Endlosschleife drin. l wird doch nie größer/gleich r... Add doch einfach 2 auf l nach der letzten if-Abfrage Oder du mußt bei der Abfrage von pivot ein größer/gleich einsetzen
Archiv
Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.