Einzelnen Beitrag anzeigen

Ducksoul

Registriert seit: 19. Apr 2006
Ort: Ilmenau
87 Beiträge
 
RAD-Studio 2009 Pro
 
#9

Re: Array sortieren mit Permutationen..

  Alt 9. Mär 2010, 19:12
Ich habe, weil mein AdHoc Programmieren nichts gebracht hat, nun nochmal von vorne angenfangen und mich auch ein wenig zur TObjectList belesen.

Mein Plan:
1. Erstelle eine Klasse TPriolist mit prio: integer; arr_jobs: array of TJob
2. Für alle Prioritäten erstelle eine Priolist vom Typ TPriolist, gebe prio die Priorität und füge arr_jobs alle Jobs mit dieser Priorität hinzu.
3. Speichere jede Priolist in ol vom Typ TObjectlist
etc...

Das funktioniert auch ganz gut, bis auf dass er die Jobs nicht speichert. Also nachdem ich fertig bin ist in jeder Priolist die Prio gespeichert, die Länge des arr_jobs richtig, aber im Array sind alle Variablen des Jobs 0.

Was hab ich nu schon wieder falsch?

Delphi-Quellcode:
    // verschiedene Prios in Priolist speichern
  for i := 0 to Length(arr) - 1 do
  begin
    contains := false;
    for j := 0 to ol.Count - 1 do
    begin
      Priolist := ol[j] as TPriolist;
      if arr[i].j_prio = Priolist.prio then
        contains := true;
    end;

    if contains = false then
    begin
      Priolist := TPriolist.Create;
      Priolist.prio := arr[i].j_prio;

      for j := 0 to Length(arr) - 1 do
      begin
        size := Length(Priolist.arr_jobs);
        if arr[j].j_prio = Priolist.prio then
        if not subListsContain(Priolist, arr[j]) then
        begin
          Inc(size);
          SetLength(Priolist.arr_jobs, size);
          Priolist.arr_jobs[size] := arr[j];
        end;
      end;
      ol.Add(Priolist);
    end;
  end;
Franz
  Mit Zitat antworten Zitat