vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Top-Preis! AP-Access-Tools-CD Volume 1  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Re: Permutation von zwei Zahlenreihen 
Autor: srcdbgr
Datum: 16.03.07 17:22

Ich denke gerade über Deinen Ansatz Arrays zu verwenden nach.
Idealerweise wäre Dein Array so aufgebaut:

1. Dimension: Startschiff
2. Dimension: Weglänge zu 1. Zielschiff
3. Dimension: Weglänge zu 2. Zielschiff
4. Dimension: Weglänge zu 3. Zielschiff
5. Dimension: Weglänge zu 4. Zielschiff
6. Dimension: Weglänge zu 5. Zielschiff
7. Dimension: Weglänge zu 6. Zielschiff
Die Obergrenze des Index ergäbe sich dann aus 6 * 6 Wege also 36 (Nicht verwechseln mit den Überlegungen zu den möglichen Ergebniskonstellationen aus den vorherigen Posts !!!)

So ein Array ist ganz schön groß im Speicher ... um genau zu sein viel zu groß.

Alternativen:
[u]1. Einen Type definieren, also bspw.

Type WegMatrix
Startschiff
WegZuSchiff1
WegZuSchiff2
WegZuSchiff3
WegZuSchiff4
WegZuSchiff5
WegZuSchiff6
End Type

Dim meinArray(1 to 36) as WegMatrix

Vorteil: Der Array ist wesentlich kleiner und der Zugriff auf die einzelne Felder per Name ist möglich.
Nachteil: Beschränkung der Schiffanzahl wie in Type angegeben.

[u]2. Verwendung einer Datei zur Aufnahme der Ergebnisse

Vorteil: Braucht sehr wenig Speicher.
Nachteil: Relativ langsamer Zugriff; "umständliches" Schleifenhandling beim Lesen und Schreiben, da die einzelnen Werte nicht indiziert sind.

[u]3. Verwendung eines verbindungslosen ADO-Recordsets zur Aufnahme der Ergebnisse

Vorteil: SQL-Zugriff !, relativ wenig Speicher, akzeptable Performance für Lese- und Schreibzugriffe, variabler Aufbau da Felder zur Laufzeit dynamisch hinzugefügt bzw. entfernt werden können, indizierter Zugriff auf Felder möglich, Zugriff auf Felder per Name möglich (also alles was Du brauchst)
Nachteil: ADO-Verweise im Projekt nicht vergessen Scherz beisete, fällt mir jetzt keiner ein.

Ich denke, Du solltest es über die Variante 3 machen. Bist Du mit ADO vertraut ?

Gruß,
Michael

Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it. (Brian W. Kernighan)

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Permutation von zwei Zahlenreihen1.263Goblin11.03.07 18:58
Re: Permutation von zwei Zahlenreihen1.042srcdbgr12.03.07 12:36
Re: Permutation von zwei Zahlenreihen872Goblin12.03.07 14:20
Re: Permutation von zwei Zahlenreihen944srcdbgr12.03.07 16:11
Re: Permutation von zwei Zahlenreihen801Goblin12.03.07 17:30
Nochmal das Koordinatensystem801Goblin12.03.07 17:37
Re: Permutation von zwei Zahlenreihen1.087srcdbgr13.03.07 12:09
Re: Permutation von zwei Zahlenreihen755srcdbgr13.03.07 13:49
Re: Permutation von zwei Zahlenreihen862Goblin13.03.07 14:34
Re: Permutation von zwei Zahlenreihen879srcdbgr13.03.07 15:30
Re: Permutation von zwei Zahlenreihen932Goblin14.03.07 07:59
Re: Permutation von zwei Zahlenreihen831srcdbgr16.03.07 17:22
Re: Permutation von zwei Zahlenreihen779Goblin17.03.07 12:29
Re: Permutation von zwei Zahlenreihen1.134srcdbgr18.03.07 04:07
Re: Permutation von zwei Zahlenreihen848Goblin19.03.07 14:03

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel