Size: a a a

2020 August 22

e

elefus in learn.java
Tagir
Если аллокация идёт на стеке, то скорее всего при входе в метод rsp сразу отмотается на все локальные переменные, которые потребуются в этом методе. Потому что так проще, чем менять его по ходу дела
спасибо за информацию, именно такое видение в голове и было
источник

T

Tagir in learn.java
elefus
спасибо за информацию, именно такое видение в голове и было
Но чаще переменная окажется в регистре, тогда не выделится ничего. Либо может вообще исчезнуть.
источник

e

elefus in learn.java
само собой, если решит раскидать по регистрам - самое быстрое
источник

AS

Andrey Shalygin in learn.java
elefus
Решение:
https://pastebin.com/nFmxSwYk

Немного тестов:
https://pastebin.com/Qv0tNS2b

Если я правильно понял задачу (на приведенном примере отрабатывает)
Спасибо огромное, буду разбираться
источник

DS

Dmitriy Shilnikov in learn.java
elefus
Решение:
https://pastebin.com/nFmxSwYk

Немного тестов:
https://pastebin.com/Qv0tNS2b

Если я правильно понял задачу (на приведенном примере отрабатывает)
Оно вообще точно правильно работает?
источник

DS

Dmitriy Shilnikov in learn.java
solver.mergeUsers(
                   "user1->1@ya.ru,2@ya.ru",
                   "user2->3@ya.ru,4@ya.ru",
                   "user3->5@ya.ru,3@ya.ru",
                   "user4->6@ya.ru,2@ya.ru",
                   "user5->xyz@pisem.net"
           );
Вот тут же должно быть два юзера, а тут их 3 получается.
источник

AS

Andrey Shalygin in learn.java
Dmitriy Shilnikov
solver.mergeUsers(
                   "user1->1@ya.ru,2@ya.ru",
                   "user2->3@ya.ru,4@ya.ru",
                   "user3->5@ya.ru,3@ya.ru",
                   "user4->6@ya.ru,2@ya.ru",
                   "user5->xyz@pisem.net"
           );
Вот тут же должно быть два юзера, а тут их 3 получается.
🙈
источник

SQ

Sobitxon Qaraxonov in learn.java
Wow, that's a great feature
источник

F

Fortune's Desire in learn.java
Dmitriy Shilnikov
solver.mergeUsers(
                   "user1->1@ya.ru,2@ya.ru",
                   "user2->3@ya.ru,4@ya.ru",
                   "user3->5@ya.ru,3@ya.ru",
                   "user4->6@ya.ru,2@ya.ru",
                   "user5->xyz@pisem.net"
           );
Вот тут же должно быть два юзера, а тут их 3 получается.
юзер 1 и юзер 4 имеют общие мыла -> один юзер, 2 и 3 тоже. А юзер5 откуда такой вылез?
источник

F

Fortune's Desire in learn.java
три получается, все верно?
источник

DS

Dmitriy Shilnikov in learn.java
Fortune's Desire
юзер 1 и юзер 4 имеют общие мыла -> один юзер, 2 и 3 тоже. А юзер5 откуда такой вылез?
Map<String, Set<String>> result = solver.mergeUsers(
                   "user1->1@ya.ru,2@ya.ru",
                   "user2->3@ya.ru,6@ya.ru",
                   "user3->5@ya.ru,3@ya.ru",
                   "user4->6@ya.ru,2@ya.ru",
                   "user5->xyz@pisem.net"
           );
Тут всё равно получается 3 юзера, хотя тут все, кроме последнего, пересекаются.
источник

F

Fortune's Desire in learn.java
занимательно
источник

DS

Dmitriy Shilnikov in learn.java
На самом деле, там алгоритм неправильный, его слабость в том, что он сразу добавляет в мапу значения
источник

DS

Dmitriy Shilnikov in learn.java
solver.mergeUsers(
                   "user1->1@ya.ru",
                   "user2->2@ya.ru",
                   "user3->3@ya.ru",
                   "user4->1@ya.ru,2@ya.ru,3@ya.ru",
                   "user5->xyz@pisem.net"
           );
источник

DS

Dmitriy Shilnikov in learn.java
Т.е. вот такое он вообще не осилит никогда
источник

F

Fortune's Desire in learn.java
да, как раз над этим думал
источник

F

Fortune's Desire in learn.java
вопрос скорее к чему такой пердолинг нереалистичный, но ладно
источник

DS

Dmitriy Shilnikov in learn.java
Fortune's Desire
вопрос скорее к чему такой пердолинг нереалистичный, но ладно
Ну в том решении, кроме того, что оно неправильное, и без этого много проблем очень.
источник

A

Anton in learn.java
Dmitriy Shilnikov
Ну в том решении, кроме того, что оно неправильное, и без этого много проблем очень.
Например split() - он же regex использует, а это не true, использовать регулярки для простых случаев)
источник

DS

Dmitriy Shilnikov in learn.java
Anton
Например split() - он же regex использует, а это не true, использовать регулярки для простых случаев)
И Pattern.compile() тоже не особо хорошо.
источник