AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Array sortieren mit Permutationen..

Ein Thema von Ducksoul · begonnen am 1. Mär 2010 · letzter Beitrag vom 17. Mär 2010
 
Ducksoul

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

Re: Array sortieren mit Permutationen..

  Alt 12. Mär 2010, 16:17
Hallo, ich hoffe das is nu die letzte Frage zu diesem Thema:

Ich habe jetzt alle Permutationen pro Prio, möchte die nun zusammenführen.

Also angenommen:
Delphi-Quellcode:
Prio1:
Kombi (J1, J2), (J2, J1)

Prio2:
Kombi (J3)

Prio3:
Kombi (J4, J4, (J5, J4)

--->
resultarray:
J1, J2, J3, J4, J5
J2, J1, J3, J4, J5
J1, J2, J3, J5, J4
J2, J1, J3, J5, J4
Ich habe jetzt probiert das über folgenden Code zu realisieren:

Delphi-Quellcode:
  kz := 0;
  while kz < count do
  begin
    sz := 0;
    for i := 0 to ol.Count - 1 do
    begin
      Priolist := ol[i] as TPriolist;
      for j := 0 to Length(Priolist.Jobs) - 1 do
      begin
        arr_finkombis[kz,sz] := Priolist.Kombis[Priolist.counter, j];
        Inc(sz);
      end;

      Inc(Priolist.counter);
      if Priolist.counter >= Length(Priolist.Kombis) then
        Priolist.counter := 0;
    end;
    Inc(kz);
  end;
kz zählt die Zeile des resultarray
sz zählt die Spalte des resultarray
Jedes mal wenn eine Kombi einer Prio durchgelaufen ist wird ein Zähler hochgezählt, so dass beim nächsten mal die darauffolgende Kombi genommen wird.
Wurden alle Kombis der Prio einmal durchgelaufen, so wird der Zähler wieder null gesetzt und die Kombiliste der Prio wird neu durchlaufen.


Aber das Problem ist, dass ich ja den Counter einer Prioliste erst höher setzen darf, wenn alle kleineren Listen einmal durchgelaufen sind. Ich habe mir gedacht Ne .change Variable in die Klasse Priolist integrieren und wenn ne Liste durchgelaufen is setze ich change auf true.
Und wenn alle kleineren Listen change auf true sind, dann gehe ich erst zur nächsten Kombination.

Ist das ein praktikabler Weg oder gehts evtl. besser?

Gruß
Franz
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz