Порридж В Ко-ливинге
Порридж В Ко-ливинге
Еще меня раздрожает писать unordered_map и unordered_set… Как будто я пишу что-то типо DEPRICATED_NEVER_USE_set
Viktor
Viktor
Когда устроился стажёром в Яндекс
Порридж В Ко-ливинге
О! Это вы
Порридж В Ко-ливинге
И место знакомоме, в Я от метро идти)
Viktor
Ага. В 2014 году, кажется.
Порридж В Ко-ливинге
Господи, я в офисе Я был уже раз 20
Порридж В Ко-ливинге
Уже разкрытыми глазами туда хожу, если меня не возьмут стажером, то устроюсь уборщиком и по ночам буду писать код 🤣🤣🤣 (шутка)
Viktor
Ой, а бакет сорт это как я понял у меня с массивом, да?
Похоже. Мне не очень нравится усложнение кода ради этого, честно, но если на собеседовании попросили бы пришлось писать или хотя бы сказать, что так можно, да.
Порридж В Ко-ливинге
Все ради O
Порридж В Ко-ливинге
Ой, а машинка не спроста там стоит
Порридж В Ко-ливинге
https://youtu.be/2XLZ4Z8LpEE
Порридж В Ко-ливинге
🤣🤣🤣
Порридж В Ко-ливинге
https://youtu.be/2XLZ4Z8LpEE
Вы в Я таким не занимались?🤣
Viktor
Вы в Я таким не занимались?🤣
Не, только на мусорке возле Я
Порридж В Ко-ливинге
https://youtu.be/2XLZ4Z8LpEE
Пердставьте top написать на этой машинке
Порридж В Ко-ливинге
Она наверное взорвется
Evgeniy
А когда эту задачу выложили?
Давно, судя по номеру. Но условие чуть поправили за последний месяц. Добавили два последних ограничения
Evgeniy
@KlenZeleny Как догадался, если не секрет?
Была задача на поиск наибольшего квадрата. И там диагональ, ширина и высота должна быть одинаковой. И, по сути, эта длина равна количеству вложенных друг в друга квадратов. Как-то по пришло в голову случайно
Viktor
Прицените если ещё не видели дайджест в большой фанговской группе. Чувак пишет про опыт собеседования в Фейсбуке (на фронтендера, видимо) и у него спросил Roman to Integer, прямо первый вопрос из моего сборника 27 задач в канале 🤣
Viktor
EЖЕНЕДЕЛЬНЫЙ ДАЙДЖЕСТ №4: https://www.notion.so/Digest-4-7da40db3f1624e52b7b0e06fbb6d94a8 Подборка самого интересного что было в наших чатах за последнюю неделю. Много инфы про то, как подготовиться Frontend Eng интервью, а также фидбек про facebook virtual onsite, amazon online assessment. И главное, как начать проходить моки🤓 (как собеседовать, и почему не надо бояться проходить мок даже с небольшим количеством задачек на литкоде), плюс ресурсы по system design, English, какие вопросы задают на первом интервью Google и др. +Добавили ссылки на прошлые дайжесты 🤓 Спасибо @kgusman @zero_in_zero @reallity_not_found @rosepetal2013 и @sergi_sema за то что сделали нам такую полезную вещь. Ребята, если вы активно читаете дайджест, и у вас есть фидбек - пишите! Мы очень хотим сделать дайджест лучше 🙂
Порридж В Ко-ливинге
Не знаю. В школе любил геометрию
Я думаю тут не геометрия, а common sense
Порридж В Ко-ливинге
Я зациклился на строжение рядов матрицы и все
Порридж В Ко-ливинге
И не видел такого очевижного решения
Evgeniy
Я зациклился на строжение рядов матрицы и все
А я как раз этого решения не увидел. Каждый по своему думает
Порридж В Ко-ливинге
Порридж В Ко-ливинге
Что-то она не понравилась людям
Evgeniy
"Во второй за сколько проходов матрица заполнится единицами, если при нахождении единицы соседи тоже становятся единицами". Находили такую на литкоде?
Evgeniy
Что-то она не понравилась людям
Наверное крайние случаи не понравились. Или предложенное официальное решение не очень
Порридж В Ко-ливинге
Comrades, did you get to look at in-place algorithm problems I sent the other day? 😊 If you have any questions feel free to ask (about them or anything else you want).
Порридж В Ко-ливинге
О, вот и приветствие стереотипное русское 🤣
Viktor
О, вот и приветствие стереотипное русское 🤣
Надо соответствовать образу русского шпиона 🤣
Evgeniy
Это rotten oranges
Спасибо! Думал что то похожее не острова
Порридж В Ко-ливинге
Это как?
Не знаю🤣 Кажется что можно так
Порридж В Ко-ливинге
Как-то хитро подсчитать 0
Evgeniy
Как-то хитро подсчитать 0
Bfs тут подойдёт, думаю
Evgeniy
https://leetcode.com/problems/sort-characters-by-frequency/discuss/645415/C-O(n)-solution-using-Dictionary
Порридж В Ко-ливинге
Это O(NlogN) O(N)
Порридж В Ко-ливинге
нет
Я увидел слово sort
Evgeniy
Я увидел слово sort
там не по N сортируется
Порридж В Ко-ливинге
В шарпе оно магическое и сортирует за N?
Порридж В Ко-ливинге
Evgeniy
в данном случае это не nlogn
Evgeniy
а sqrt(n)*log(n) < O(n)
Порридж В Ко-ливинге
а sqrt(n)*log(n) < O(n)
Это скорость сортировки?
Evgeniy
итоговая сложность O(n)
Порридж В Ко-ливинге
Ладно, не совсем понял как Array.sort ломает законы математики
Порридж В Ко-ливинге
Но кажетсч понял, вы поступили умнее
Порридж В Ко-ливинге
Вы сначала посчитали кол-во элеметнов, а потом уже через bucket отсортировали
Порридж В Ко-ливинге
итоговая сложность O(n)
Ну да, в итоге сложность такая же, но код по умнее
Порридж В Ко-ливинге
Даже попробую переделать сейчас
Evgeniy
order[occs[ch]]->erase(ch);
Evgeniy
а это не даст квадратичную сложность?
Evgeniy
Даже попробую переделать сейчас
Попробуй. А я пока пытаюсь понять решение
Evgeniy
а это не даст квадратичную сложность?
Кажется нет, это мы чистим сет
Порридж В Ко-ливинге
Порридж В Ко-ливинге
Как я понял, или O(N logN) O(1)
Порридж В Ко-ливинге
Или O(N) O(N)
Viktor
https://leetcode.com/problems/sort-characters-by-frequency/discuss/645415/C-O(n)-solution-using-Dictionary
class Solution { public: string frequencySort(string s) { string result = ""; priority_queue<pair<int, char>> q; unordered_map<char, int> freq; for (auto ch : s) { freq[ch]++; } for (auto ch : s) { q.push({freq[ch], ch}); } while (!q.empty()) { result += q.top().second; q.pop(); } return result; } };
Viktor
Я сортирую «хипом» 😄
Порридж В Ко-ливинге
Меня опередили