AGB  ·  Datenschutz  ·  Impressum  







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

Arrays vertauschen

Offene Frage von "jonsen2.0.0.9"
Ein Thema von jonsen2.0.0.9 · begonnen am 27. Jan 2010 · letzter Beitrag vom 29. Jan 2010
 
Amateurprofi

Registriert seit: 17. Nov 2005
Ort: Hamburg
1.100 Beiträge
 
Delphi XE2 Professional
 
#12

Re: Arrays vertauschen

  Alt 28. Jan 2010, 15:47
Zitat von blink182:
Okay vllt nicht sehr rechenzeit optimiert, dafür weniger speicherplatz

ja das macht wenig Sinn... Muss man halt checken, dass j<>i ist.
Aber selbe zahlen kann man ja trotzdem vertauschen ;-)

11 xor 11 = 00
00 xor 11 = 11
00 xor 11 = 11

aber okay, der dreieckstausch ist da sinnvoller. Ist auch das was man normal macht
Nein und nochmal nein.
Das erste Nein zu "Aber selbe zahlen kann man ja trotzdem vertauschen ;-)"
Bei deiner obigen Darstellung
11 xor 11 = 00
00 xor 11 = 11
00 xor 11 = 11
machst du einen Denkfehler. Tatsächlich wird (wenn j=i ist) folgendes gerechnet.
11 xor 11 = 00
00 xor 00 = 00
00 xor 00 = 00
Das zweite Nein zu "dafür weniger speicherplatz"
Die zusätzliche lokale Variable wird überhaupt nicht angelegt, weil (bei eingeschalteter Optimierung) ein CPU-Register für die Zwischenspeicherung verwendet wird. Auch bei ausgeschalteter Optimierung kostet die zusätzliche Variable im Prinzip keinen Speicherplatz, weil sie auf dem Stack angelegt wird, und der ist (unabhängig von lokalen Variablen) eh' schon vergeben.
Aber : bei ausgeschalteter Optimierung ist (in Bytes gemessen) deine Prozedur deutlich länger und das kostet dann tatsächlich Speicherplatz.
Gruß, Klaus
Die Titanic wurde von Profis gebaut,
die Arche Noah von einem Amateur.
... Und dieser Beitrag vom Amateurprofi....
  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 16:18 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