
J
28.12.2016
23:03:23
не я то решил :)

balolam
28.12.2016
23:04:17

Ivan
28.12.2016
23:04:22
Давай ответ уже) мозги не варят

Юрий
28.12.2016
23:04:54

Google

J
28.12.2016
23:05:06
ну так, задача тем кто тут любит головоломки

Юрий
28.12.2016
23:05:23
а в чем здесь головоломка?))

Sergei
28.12.2016
23:05:33
в Collections тоже идет по массиву и меняет элемент на позицию с рандомным индексом

Юрий
28.12.2016
23:06:01
пальцы заплетаются)

J
28.12.2016
23:08:10
ну основной мув : не трогать уже перемешанные элементы
втупую - просто выдёргивать их и уносить в другой лист
как с картами
у тебя 2 кучи
в одной исходные карты
во второй перемешанные
из исходной выдёргиваешь случайный элемент и добавляешь в уже перемешанные в конец

Google

J
28.12.2016
23:11:33
потом, когда всё работает
можно оптимизировать
и всё делать в одном массиве
разделив его условно на уже перемешанные элементы и остальные

Юрий
28.12.2016
23:12:47
у неперемешанных элементов ближе к концу массива вероятность уйти в начало стремится к 0

Sergei
28.12.2016
23:13:46
чет не понял с чего бы во втором массиве оно стало перемешанным?

Юрий
28.12.2016
23:14:14
точнее даже не стремится, а 100% = 0

J
28.12.2016
23:15:20
ну у тебя массив [ 1 2 3 4 5 6 7 8]
и второй пустой
ты выдёргиваешь случайные элементы из первого и добавляешь во второй

Юрий
28.12.2016
23:15:42

J
28.12.2016
23:16:07
таким образом гарантируется что уже перемешанные элементы не будут ещё раз выдернуты
и получается юниформ 100%

Sergei
28.12.2016
23:16:35
а выдернутый обьект это удаленный из текущего массива?

J
28.12.2016
23:16:42
да
решение говно, но работает.
теперь второй мув это всё это проделать в одном массиве, не используя доп память

Юрий
28.12.2016
23:18:03
а что есть юниформ? чот я подтупливать начинаю на ночь глядя))

Sergei
28.12.2016
23:19:07
иди до половины массива и меняй на рандомный индекс со второй половины массива) Условие перемешывания не задано, значит решение ок

J
28.12.2016
23:19:30

Sergei
28.12.2016
23:19:42
окаай)

J
28.12.2016
23:19:44
перестановка - это итоговый массив

Google

Юрий
28.12.2016
23:19:46
о, понял
да, тогда предложенное мной не канает

J
28.12.2016
23:20:27
типа все комбо 1 2 3 должны быть равновероятны

Юрий
28.12.2016
23:21:18

J
28.12.2016
23:21:29
ну как карты в казино мешают надо сделать
чтоб посетители не могли наебать систему, всё должно быть супер перемешано

Юрий
28.12.2016
23:22:39
это как?
а чот пока сам не придумал)))
в голове нарисовалась картинка массива, который перемешивается с двух сторон

J
28.12.2016
23:23:16

Юрий
28.12.2016
23:23:22
0й и nй
1й и -1й
и тд)

J
28.12.2016
23:24:21
кароче задание ещё раз: на входе массив, на выходе - охуенно перемешанный массив

J
28.12.2016
23:24:57
охуенно перемешанный - значит юниформд
решение: пробегаешь по массиву, свопишь i элемент со случайным из только тех кто справа (включая i)
получается что слева от i всегда лежат уже перемешанные,
так как они больше не учавствуют - гарантируется юниформ
на каждом шаге

Sergei
28.12.2016
23:33:32
короч реализация Collections
for (int i=size; i>1; i--)
swap(arr, i-1, rnd.nextInt(i));

J
28.12.2016
23:34:59
ну тож самое, тока в другую сторону

Google

J
28.12.2016
23:35:04
заебок

Sergei
28.12.2016
23:35:22
я сперва глянул криво, подумал там рандом по всему массиву
и сидел тупил как они могли не оптимальное решение засунуть
спать пора

J
28.12.2016
23:38:45
кароч эту хуйню спрашивает фейсбук и гугл
на онсайтах
самый заебок случится если попросят доказать юниформность

Dmitrii
28.12.2016
23:40:06
Ходил к ним чтоле?

J
28.12.2016
23:40:26
д

Admin
ERROR: S client not available

Sergei
28.12.2016
23:40:46
а вот доказать это как? Вроде все логично, если рандом более-менее адекватный

Dmitrii
28.12.2016
23:40:56
И че как? Послан был?)

J
28.12.2016
23:42:17
я неебу как доказать, меня слава байткоду, не просили
но вот гугл на телефоне просил доказать что компарабл сортировки работают не лучше чем n log n

Sergei
28.12.2016
23:45:20
всегда было интересно, правильный или не правильный ответ на такие задачки и просьбы доказать хоть как-то оправдан с точки зрения оценки возможности выполнять чуваком рабочие задачи

J
28.12.2016
23:46:06

Sergei
28.12.2016
23:46:27
После таких собеседований в 99% случаев релаьные задачи это жсон в текствью переводить. В гугл и фб может иначе

Dmitrii
28.12.2016
23:46:28
Не велика потеря

J
28.12.2016
23:48:21
я думаю реальный пруф про компарабл сортировки будет начинаться с пары страниц определений таких вещей как энтропия и формул из космоса

Google

J
28.12.2016
23:50:02
но легенда гласит что любая компарбл сортировка описывается деревом принятия решений высоты n log n
кароче не на 40 минут дискуссия


Sergei
28.12.2016
23:56:45
вот вот

T
29.12.2016
00:09:03
Присоединяйся к игре Chat Wars! Первая ММОРПГ в Telegram. Заходи по ссылке и получишь 10 золотых монет:
https://telegram.me/ChatWarsBot?start=0a1e42bb7c4e4ec19d4477d89d4db698

Иван
29.12.2016
00:23:27

Владислав
29.12.2016
00:23:57
@InjectViewState Приди, порядок наведи

T
29.12.2016
03:05:08
Хотел поделиться крутой штукой, только и всего то


Gleb
29.12.2016
05:20:23
Хммм.... интересная штука, её можно подвязать к курсору, сети напрямую, репозиторию, в общем любой модели и подгружать только нужные данные, а не скармливать ресайклервью весь массив данных целиком...
Да вот я ж и смотрю... там по идее на базе неё до фига что можно делать.
Ну вот не до конца всё еще понятно....касаемо курсора н-р (мой случай)
то есть...теперь мой мир со связкой cursor-loader -> cursor adapter разрушен)))
получается, что лоадеры каждый раз выплёвывали тебе новый курсор при обновлении контент провайдера..... и тут гугл был последователен когда писал что cursor.requery - deprecated -
-типа, не надо вам переиспользовать курсор - лоадер под капотом сам перезапросит новый, доставит вам его и закроет старый
...а теперь, получается во первых тут лоадер мне не нужен
мне нужно самому в AsyncListUtil.DataCallback.html#refreshData() имплементить получение и requrey курсора, ну и подписываться на него итд со всем вытекающим
то есть по-нормальному тут для работы с курсором еще облагораживать надо эту технологию - либо я чего-то не догоняю
и как же тогда cursor.requery - deprecated ??? короче пока куча вопросов
А тут пишут - юзай либы - юзай либы!!!..... нету блять таких либ которые правильно будут работать с контент-провайдерами и ресайклером - кучи говна ненужного полно, а то что нужно - нету - всё ручками-ручками
....вот вам и "юзай либы - юзай либы!!!-задача то тривиальная"
- угу - 100 раз тривиальная


Gerc
29.12.2016
05:32:57
как на хиоеми сделать статус бар нормальный при белом фоне? Дибилы китайцы все сломали

Masha
29.12.2016
05:55:27

NermaN
29.12.2016
05:58:27

Masha
29.12.2016
05:59:13

Gleb
29.12.2016
05:59:43
Либы > свой код, всегда
Да хоть бы были(не на всё есть).... а там...
... подрезать себе в код ценное зерно - эт не проблема ;)

NermaN
29.12.2016
06:00:10
Я когда написал авторам они ответили что не думали что так бывает

Gleb
29.12.2016
06:02:55
Маша права, авторитеты есть - чай все б не молились на Доброго Мишку из Square и RxJava - провереные народом, заюзаные в продакшнах, стабильные покрытые тестами и кучей критикой по коду - но это единицы - такие кот-м можно доверять - самые так сказать фундаментальные какие-то вещи

NermaN
29.12.2016
06:03:36

Gleb
29.12.2016
06:03:45
но эт ток про популярные - их там по пальцам посчитать