Javascript просто восхитителен. Вы знали, что можно отсортировать массив с помощью setTimeout()? / it-юмор :: geek (Прикольные гаджеты. Научный, инженерный и айтишный юмор)

it-юмор geek 

Javascript просто восхитителен. Вы знали, что можно отсортировать массив с помощью setTimeout()?

Û в jsbin.com/?js
0
HTML CSS JavaScript Console
JavaScript »
let arr = [10, 100, 650, 25, 5, 50];
arr.forEach((item) => {
setTimeout(() => console.log(item), i tem);
});
// output 5
10
25
50
100
650
B
Output,it-юмор,geek,Прикольные гаджеты. Научный, инженерный и  айтишный юмор


Подробнее
Û в jsbin.com/?js 0 HTML CSS JavaScript Console JavaScript » let arr = [10, 100, 650, 25, 5, 50]; arr.forEach((item) => { setTimeout(() => console.log(item), i tem); }); // output 5 10 25 50 100 650 B Output
it-юмор,geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор
Еще на тему
Развернуть
Что сказать то хотел?
А причем тут js?
Wolfdp Wolfdp 14.08.202020:34 ответить ссылка 3.8
окей, если мутит такое на том же шарпе, то придется ставить минуты, ибо в реальной многопоточности это выглядит как-то так
0 references
static void Main(string[] args )
{
van am = new[] { 10, 109, 659, 25, 6, 5, 7, 5, 5, 6, 7, 5, 50 }; foneach (var item in am)
Task.Delay(item).ContinueWith(task => Console.WriteLine(item)); Console.ReadKey();
}
0
5
5
25
5
7
5
6
59
7
19
100
650
» let arr = [10, 100,
Wolfdp Wolfdp 14.08.202021:13 ответить ссылка 0.3
на С++ ваши приколы тоже работают
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
#include <chrono> #include <iostream> #include <vector>
void printAfterTimeout(int value)
EH
std::this_thread::sleep_for(std::chrono:¡milliseconds(value)); std::cout « value « std::endl;
L>
int
for t in 10 100 650 25 5 50; do sleep $t && echo $t & done 2>/dev/null; wait

POSIX-shell с job control круче всех.
dadv dadv 19.08.202003:15 ответить ссылка 0.0
Секундомер на любом телефоне тоже классно сортирует, обычно так и делаю перед отправкой респонса
mememoar mememoar 14.08.202020:43 ответить ссылка 1.4
3D на SQL можно реализовать и RayTrace в Excel а тут-то что?
Сначала не понял, а потом как поооооонял....
а я всё ещё туплю
бухой видимо
разжуйте пожалуйста. я утром гляну
время таймаута = значение итема
Argaki Argaki 15.08.202000:49 ответить ссылка 2.0
Все логично. Js асинхронный, потому вывод по возрастанию таймаута.
zombofrog zombofrog 14.08.202020:55 ответить ссылка -0.5
Js условно асинхронный. Там ивент-луп внутри, который просто выбирает события из цикла по кругу. Мы вам перезвоним.
Arakon Arakon 15.08.202010:44 ответить ссылка 1.5
а вот POSIX shell истинно асинхронный, он круче
dadv dadv 19.08.202003:17 ответить ссылка 0.0
Удивительно, но сложность такого алгоритма О(1)! Или я упускаю что то? Ещё более удивительно, что в данном случае не выйдет получить преимущество в общем случае (только для малых чисел).
Arakon Arakon 15.08.202002:45 ответить ссылка 0.1
O(n) как минимум. А вообще, помойму даже нет смысла тут сложность смотреть
Нет, O(n) не как минимум, а в "худшем" случае. Вот 1,2,3,100500 какая сложность? А почему нет смысла?
Arakon Arakon 15.08.202010:42 ответить ссылка 0.0
O(n) - линейное время, перебор по массиву идёт. Смысла нет потому, что c Number.MAX_SAFE_INTEGER потребуется 285616 лет для итерации
Я знаком с О-нотацией. В моем примере скорость выполнения зависит от значения а не от величины входных данных. Я не уверен что можно говорить о константном времени, но и не уверен также что зависимость линейная.
То что решение бесполезно я уж, поверь, догадался. У меня просто спортивный интерес в оценке сложности.
Arakon Arakon 15.08.202016:51 ответить ссылка 0.0
Аналог этой сортировки - сортировка подсчетом. Она тоже зависит от значений. Сложность линейная (условно). Меньше линейной быть не может просто по причине линейной сложности прохода по массиву.
gelios gelios 16.08.202011:14 ответить ссылка 0.1
O(max(n, lim(array(i) i->n)) - примерно, я математический кретин
gelios gelios 15.08.202012:31 ответить ссылка 0.0
Только зарегистрированные и активированные пользователи могут добавлять комментарии.
Похожие темы

Похожие посты
e* \
; -s Tomasz is building cloudash.dev 1d
^ npm install esllnt-conflg-airbnb
'••'.K r
Q 31 tn 683	5 023 ¿j ‘3’-’1’=
Traceback (most recent call last) File "<pyshell#2>"1 line 1, in <mo •3-T
TypeError: unsupported operand type(s) for 'str' and s ¡ndex.js
JavaScript Moment
1	console log(018 == '018');
2	console log(017 == ‘017');
3
■ Default: node index.js
true
false » 4 in l <- false
Programmer Memes
@iammemeloper
Without a doubt, the best programming language
11:09 PM -Sep28, 2023 121.6K ¡ews
» let l = [1,2,3,4]
<- undefined
» 0 in l <- true
» "0" in l <- true
подробнее»

javascript языки программирования программирование geek,Прикольные гаджеты. Научный, инженерный и айтишный юмор javascript programming languages programming geek

» 4 in l <- false Programmer Memes @iammemeloper Without a doubt, the best programming language 11:09 PM -Sep28, 2023 121.6K ¡ews » let l = [1,2,3,4] <- undefined » 0 in l <- true » "0" in l <- true