insertionsort prob
-
Hallo,
ich habe ein InsertionSort algo genommen und angepasst. Aber irgendwie funktioniert er nicht richtig. :-\
Ich möchte alle Elemente im Array arr, nach dem "dist" wert sortieren. Grosse dist werte zuerst und dann absteigend.
Hier ist der Code:
void insertionSort2(DummyArray** arr,Vector cam) { DummyProp* g_arr = (*arr)->GetArray(); int iCurrentPos = 0; for(int i = 1; i < (*arr)->GetCount(); i++) { iCurrentPos = i - 1; DummyProp* temp = (*arr)->GetIndex(i); float dist = temp->dist; while((iCurrentPos >= 0) && (*arr)->GetIndex(iCurrentPos)->dist < dist)) { g_arr[iCurrentPos + 1] = *(*arr)->GetIndex(iCurrentPos); iCurrentPos--; } g_arr[iCurrentPos + 1] = *temp; } }
Was mache ich falsch?
Danke
Katachi
-
Mal so gefragt: Was macht der Code denn falsch?
-
Walli schrieb:
Mal so gefragt: Was macht der Code denn falsch?
Das weiss ich ja grad nicht. Das Array weist danach doppelte Einträge auf.
-
Ok, habs schon. Ich hab einfach ein 2. DummyArray erstellt und weise die sortierten Objekte diesem zu.