Schrift
[thread]6168[/thread]

0 <=> 1: schnellste lösung (Seite 3)

Leser: 1


<< |< 1 2 3 4 >| >> 32 Einträge, 4 Seiten
pq
 2004-03-30 13:05
#81333 #81333
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
bei mir war $var ^= 1 am schnellsten (benchmark-code auf anfrage, bin gerade zu faul =).
ich finde es auch am idiomatischsten und es ist IMHO durchaus verständlicher perl-code.
ich benutze eigentlich immer diese variante.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Crian
 2004-03-30 13:50
#81334 #81334
User since
2003-08-04
5866 Artikel
ModeratorIn
[Homepage]
user image
Das ist vielleicht auch eine philosophische Frage. x -> 1-x ist am mathematischsten ;)
Da brauchts keine Bit-Drechseleien etc., deshalb ist es für mich am idiomatischsten.

Natürlich ist $var ^= 1 verständlicher Perlcode, aber das empfinden, welcher Code das gewünschte Verhalten am "natürlichsten" Ausdrückt, ist wohl unterschiedlich.

Irgendetwas in mir sagt mir, dass $var ^= 1 zwar sehr elegant ist, ich es aber doch nicht nehmen möchte.
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
Taulmarill
 2004-03-30 13:54
#81335 #81335
User since
2004-02-19
1750 Artikel
BenutzerIn

user image
ich denke es ist auch nicht performancerelevant. da gibt es in den meisten programmen mit sicherheit andere optimierungsansätze.
als beispiel, auf meiner sun brauchen 10.000.000 operationen zwischen 9 und 6 sec.
also kann man hier getrost die variante wählen die einem am meisten zusagt.
$_=unpack"B*",~pack"H*",$_ and y&1|0& |#&&print"$_\n"for@.=qw BFA2F7C39139F45F78
0A28104594444504400 0A2F107D54447DE7800 0A2110453444450500 73CF1045138445F4800 0
F3EF2044E3D17DE 8A08A0451412411 F3CF207DF41C79E 820A20451412414 83E93C4513D17D2B
lichtkind
 2004-03-30 21:16
#81336 #81336
User since
2004-03-22
5680 Artikel
ModeratorIn + EditorIn
[Homepage]
user image
ja zumeal ich mich für ^= 1; entschieden hab weil der variablen name pervers lang ist (hash mit verschachtelungstiefe wegen lesbarkeit) und ich den namen nicht 3 mal dastehen haben wollte\n\n

<!--EDIT|lichtkind|1080668181-->
Wiki:Tutorien in der Wiki, mein zeug:
kephra, baumhaus, garten, gezwitscher

Es beginnt immer mit einer Entscheidung.
[E|B]
 2004-03-30 22:59
#81337 #81337
User since
2003-08-08
2561 Artikel
HausmeisterIn
[Homepage] [default_avatar]
Was ist denn "^=" ?
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
esskar
 2004-03-30 23:02
#81338 #81338
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
ein xor

genau wie +=, -=, ||=, etcpp
[E|B]
 2004-03-30 23:03
#81339 #81339
User since
2003-08-08
2561 Artikel
HausmeisterIn
[Homepage] [default_avatar]
XOR kannte ich. Aber dass das auch in Verbindung mit "=" geht, interessant. :)
Gruß, Erik!

s))91\&\/\^z->sub{}\(\@new\)=>69\&\/\^z->sub{}\(\@new\)=>124\&\/\^z->sub{}\(\@new\)=>);
$_.=qq~66\&\/\^z->sub{}\(\@new\)=>93~;for(@_=split(/\&\/\^z->sub{}\(\@new\)=>/)){print chr;}

It's not a bug, it's a feature! - [CGI-World.de]
esskar
 2004-03-30 23:28
#81340 #81340
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
warum auch nicht?

on man jetzt
Code: (dl )
$x = $x ^ 1;

oder
Code: (dl )
$x ^= 1;

tut ja nix zur Sache
kölsch
 2004-03-31 00:14
#81341 #81341
User since
2003-10-02
66 Artikel
BenutzerIn
[default_avatar]
[E|B
,30.Mar..2004, 21:03]XOR kannte ich. (..)

..wird dir spätestens im Informatik Studium begegnen ;)
pq
 2004-03-31 02:24
#81342 #81342
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
[quote=lichtkind,30.03.2004, 19:16]ja zumeal ich mich für ^= 1; entschieden hab weil der variablen name pervers lang ist (hash mit verschachtelungstiefe wegen lesbarkeit) und ich den namen nicht 3 mal dastehen haben wollte[/quote]
ach, lange variablennamen sind auch wieder nicht so schlimm - wofür hat man
einen editor mit variablennamen-ergänzung :)
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
<< |< 1 2 3 4 >| >> 32 Einträge, 4 Seiten



View all threads created 2004-03-28 01:06.