AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Suchfunktion Ergebnis der Suchanfrage

Ergebnis der Suchanfrage


Datum des Suchindex: Heute, 20:17

Parameter dieser Suchanfrage:

Suche in Thema: 2 dimensionale sets?
Suche alle Beiträge, die von "3_of_8" geschrieben wurden
• Suchmethode: "Suche nach allen Begriffen"
• Nach Datum (firstpost) sortiert
• Zeige Treffer als Beiträge
Zeige 12 von insges. 12 Treffern
Suche benötigte 0.004s

Es liegen Ergebnisse in folgenden Bereichen vor:

  • Forum: Object-Pascal / Delphi-Language

    Re: 2 dimensionale sets?

      Delphi
      by 3_of_8, 16. Mär 2008
    Was heißt da gähn? Nach deiner Begründung dürfte array ja auch nicht gehen und der Compiler müsste da dann auch eine Obergrenze setzen.
  • Forum: Object-Pascal / Delphi-Language

    Re: 2 dimensionale sets?

      Delphi
      by 3_of_8, 16. Mär 2008
    Wenn array of <Typ> geht, warum nicht set of Cardinal? Letzteres ist sogar kleiner.
  • Forum: Object-Pascal / Delphi-Language

    Re: 2 dimensionale sets?

      Delphi
      by 3_of_8, 16. Mär 2008
    Was dann aber zu unnötigem Speicherverbrauch führen kann. Eine Hashset-Implementation oder eine sortierte Liste von Sets oder sogar eine sortierte Liste von getaggten, sortierten Listen von Integern könnte hier sinnvoller sein. Dann kann man immerhin in logarithmischer Zeit nach Koordinaten suchen.
  • Forum: Object-Pascal / Delphi-Language

    Re: 2 dimensionale sets?

      Delphi
      by 3_of_8, 16. Mär 2008
    Nein, tue ich nicht. TObject ist kein Ordinaltyp, Int64 auch nicht (zumindest nicht in 32 Bit-Delphi). Spätestens bei Cardinal sollte Schluss sein, das sind ja bereits 128 MB pro Set. Aber zumindest Words sollten drin sein.

    Aber der Compiler kann definitiv die Obergrenze sehen, in dem Fall ist es zum Beispiel high(Cardinal).
  • Forum: Object-Pascal / Delphi-Language

    Re: 2 dimensionale sets?

      Delphi
      by 3_of_8, 16. Mär 2008
    Cum hoc ergo propter hoc?

    Oder anders gesagt: Du schließt falsch. Du solltest den Artikel schon weiterlesen. Im ersten Satz steht:
  • Forum: Object-Pascal / Delphi-Language

    Re: 2 dimensionale sets?

      Delphi
      by 3_of_8, 16. Mär 2008
    Weil du "Fließkommazahlen" geschrieben hast, was falsch ist. ;)

    Und der Compiler kann die Obergrenze ja leicht ermitteln, indem er sich das größte Element ansieht.
  • Forum: Object-Pascal / Delphi-Language

    Re: 2 dimensionale sets?

      Delphi
      by 3_of_8, 16. Mär 2008
    Beliebig lange Gleit(!)kommazahlen geben die gängigen Prozessoren nicht her, beliebig lange (bzw. fast beliebig lange) Sets schon. Die Bytegrenze ist vermutlich ein Relikt aus alten Zeiten.
  • Forum: Object-Pascal / Delphi-Language

    Re: 2 dimensionale sets?

      Delphi
      by 3_of_8, 16. Mär 2008
    Klar kann man das so machen. Bei Words hat man dann aber sogar bei Bitvektoren einen Speicherverbrauch von 128 MB.
  • Forum: Object-Pascal / Delphi-Language

    Re: 2 dimensionale sets?

      Delphi
      by 3_of_8, 16. Mär 2008
    Hat er doch oben geschrieben: Er will eine Menge, in der er (kartesische) Koordinaten speichern kann. In einem normalen Set kannst du nur ordinale Typen speichern, und Koordinaten der Form (x|y) sind nunmal nicht ordinal, weder in Delphi noch in der Mathematik. ;)
  • Forum: Object-Pascal / Delphi-Language

    Re: 2 dimensionale sets?

      Delphi
      by 3_of_8, 16. Mär 2008
    Ein Bitvektor ist im Prinzip das, was die Pascal/Delphi-Sets machen oder auch die Klasse TBits: Man benutzt einfach einzelne Bits, um einen Boolean-Wert zu speichern.

    In einem 32-Bit-Cardinal hat man z.B. 32 Bits, kann also 32 Booleans darin kodieren. Realisiert wird das über die binären Operatoren von Delphi.

    Zum Abfragen eines Bits verwendet man sowas:

    function GetBit(const Vector,...
  • Forum: Object-Pascal / Delphi-Language

    Re: 2 dimensionale sets?

      Delphi
      by 3_of_8, 16. Mär 2008
    Nur so nebenbei: Bei einem Bitvektor wäre der Speicherverbrauch um den Faktor 32 geringer.
  • Forum: Object-Pascal / Delphi-Language

    Re: 2 dimensionale sets?

      Delphi
      by 3_of_8, 16. Mär 2008
    So geht das nicht. Ich würde hier ein Hashset verwenden, dann brauchst du nur eine zweidimensionale Hashfunktion. Alternativ geht auch eine Bitvektor mit einer Zuordnungsfunktion, die deine zwei Koordinaten umrechnet. D.h. du verwendest sowas wie TBits und wenn du sehen willst, ob (X|Y) enthalten ist, fragst du den Wert Y*Width+X ab.


URL zu dieser Suchanfrage:

https://www.delphipraxis.net/dp_search.php?do=usersearch&search_username=3_of_8&search_exact_username=1&search_sortby=dateline&search_resulttype=post&search_matchmode=0&searchthreadid=110330
Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:29 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz