Nazywasz to zoptymalizowanym? [Zamknięte]


9

Zadanie jest proste: fragmenty kodu po 2, które wykonują to samo zadanie, przy czym jeden wydaje się bardzo zoptymalizowany na pierwszy rzut oka, ale w rzeczywistości jest znacznie wolniejszy od drugiego.

Tylko jedna zasada:

  • Oba fragmenty muszą kończyć się dokładnie takim samym wyjściem (dla tego samego podanego wejścia, jeśli istnieje).

1
Bez wybrania konkretnego zadania uważam, że jest to zbyt szerokie, aby mogło być interesujące. Powinieneś także określić, czy oba fragmenty muszą używać tego samego języka.
Dennis,

@Dennis tak, to może być zbyt szerokie, chciałem tylko zobaczyć kilka kreatywnych podejść. Nie ma też ograniczeń dotyczących języków, dzięki czemu można uzyskać większą swobodę twórczą.
vrwim

9
Twórcza wolność nie prowadzi do twórczych odpowiedzi. Wymaga dużo więcej kreatywności, aby rozwiązać trudne zadanie niż łatwe.
Dennis,

Odpowiedzi:


11

Python 3

Wydaje się szybki ...

 print(0 < 10**100 - 1 < 10**100)

Wydaje się wolny ...

 print(10**100 - 1 in range(0, 10**100))

Ale obie biegną w bardzo podobnych czasach! rangema wydajną implementacjęin


Pytanie zamknięte na bok, czy nie robi to odwrotności pytania? Chcesz czegoś, co wygląda szybko, ale jest naprawdę wolne, a nie czegoś, co wygląda powoli, ale jest naprawdę szybkie ...
Sp3000,

4
@ Sp3000 racja, ale była tak szeroka, że ​​postanowiłem opublikować jeszcze szerszą odpowiedź.
Caridorc,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.