Чашка Кода
467 subscribers
254 photos
5 videos
1 file
161 links
👋 Я - Никита, Senior разработчик, автор курсов по Python-разработке. Пишу на Python и Rust

✏️ В этом канале посты, которые сделают твой путь к веб-разработке проще

Задать вопрос, позвать на конференцию, записать со мной курс/статью/подкаст
👉 @PySage
Download Telegram
8️⃣ шагов успешного прохождения алгособеса

Я уже рассказывал (в этом посте), что базы данных важны, вне зависимости от выбора языка. Тоже самое можно сказать про алгоритмы. Алгоритмы - это дополнение навыка решения проблем (пост). Про сами алгоритмы я говорил в посте, но сегодня поговорим как это относиться к работе.

Если вы пишите на Python, Rust или другом языке, где есть функции, решающие 90% встречаемых проблем, критически важно их знать. Практикуя алгоритмы, вы познакомитесь с ними и начнёте использовать.

Не менее важна и алгортимическая сложность решений которые вы пишете, но про это расскажу отдельно.

➡️ До получения работы вы можете попасть на этап алгоритмического собеседования. Как его проходить? (в тексте ниже рекрутёр - технический специалист, проводящий алгоритмический собес)

1️⃣ Выслушайте: Обратите особое внимание на особенности задания. Если вам сказали, что входные данные отсортированы, то это точно намёк на оптимальный алгоритм. Проговорите в слух всё, что вы поняли о задании. Ваше представление о задании должно быть таким же, как у рекрутёра.

2️⃣ Примеры: Большинство примеров маленькие или описывают конкретный случай. Добавьте примеры, которые покроют все возможные ситуации. Задайте себе вопросы "Это не особый случай? Этот пример достаточно большой?"

3️⃣ Брутфорс: Придумайте решение "в лоб" как можно быстрее. Не надо думать об эффективности и коде. Составьте алгоритм, который будет работать, а затем уже думайте об оптимизации.

4️⃣ Оптимизация: Воспользуйтесь оптимизацией BUD:
🟠Всю ли информацию о задании вы использовали?
🟠Используйте свой алгоритм для имеющихся примеров
🟠Определите, какая часть алгоритма самая затратная, есть ли лишние действия?
🟠Можно ли оптимизировать скорость за счёт использования памяти?

5️⃣ Повторение: До написания кода озвучьте рекрутёру своё решение, уточнив все детали. Если рекрутёр одобрил решение, то скорее всего уже всё хорошо. Спросите у рекрутёра совета, если решение не подошло.

6️⃣ Реализация: Нужно написать идеальный код! Пишите модульный код, который легко поддерживать. Написав, проведите рефакторинг, проверив строку за строкой.

7️⃣ Тестирование: Обычно код запустить нельзя! Проверяйте в таком порядке:
🟢Код ревью: проверьте ваше решение, строку за строкой
🟢Необычный или нестандартный ввод
🟢Проверьте код на небольших тестах
🟢Краевые значения и особые случаи

8️⃣ Представьте решение. Если все тестовые данные привели к необходимому ответу, то представьте своё решение. Расскажите как работает ваш алгоритм. Если использовались встроенные функции, то нужно понимать, насколько они эффективны. Проведите анализ производительности и потребления памяти по Big O Notation.

#мудрость_на_каждый_день
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3👍1👾1
К моей статье о том, как ИИ забирает нашу работу, отлично подходит обложка свежего журнала The New Yorker ➡️

А вы согласны с редакторами журнала?

#мемы
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥62👾1
⚡️ Сколько программистов надо для разработки сервиса? Более того, этот сервис, за первый год работы, соберёт 14 миллионов пользователей! Спойлер: 3 человека!

Сразу польза от каждого из них:
🔹 Не усложняй! Простые вещи оставляй простыми.
🔹 Не придумывай! Не нужно создавать колесо заново.
🔹 Используй проверенные, "крепкие" технологии.

Весь бекенд сервиса написан на Python, с использованием фреймворка Django (мощный и популярный инструмент с большим количеством функций для веб-разработки). В качестве базы данных выбрали Postgres, который легко справлялся с нагрузкой в более 7 000 записей в минуту 🌐

Разработчики сервиса придумали
, как создавать уникальные ID для записей. Причём, их хватает на 1024 уникальных значений для каждой миллисекунды! А для кеширования данных использовали Redis.

🙋‍♂️ Все эти инструменты использую и я в своей работе. Впрочем, как и большинство компаний на рынке.

Для многих задач использовались бесплатные решения с открытым кодом. Первую версию сервиса разрабатывали всего 8 недель. Через 2 года после запуска, в 2012, он был продан в Facebook за 1 миллиард долларов! Вы уже наверняка догадались, что этим сервисом был Instagram 📷

Пишите комментарий, если хотите подробный разбор технической структуры сервиса! 🔽

#находки
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥51👍1🦄1
⚡️ ИНСАЙТЫ ОТЧЁТА «2023 Developer Survey»⚡️

На днях прочитал отчёт от stackoverflow. В исследовании для этого отчёта приняли участие 90 000 разработчиков, в основном из США (21%) и Германии (8%).

Выделил для вас основные инсайты:

🟢 80% разработчиков изучают программирование, используя онлайн ресурсы (в 2022 было 70%)
🟢 Самым популярным способом изучения является чтение документации
🟢 Около 20% разработчиков не имеют высшего образования
🟢 5 лет - средняя разница в опыте между разработчиком и руководителем разработки
🟢 Более 53% разработчиков выбрали самой популярной технологией Docker (ТОП-2 в 2022)
🟢 63% разработчиков тратят более 30 минут в день на поиск решений в интернете
🟢 Rust - самый восхищающий язык, про это подробнее ниже

Интересный взгляд на языки программирования, смотреть не на популярность языка, а на "удержание".

🔜 Один из самых популярных языков, JS (7 место в рейтинге TIOBE) хотят использовать 40% разработчиков. Однако, среди тех, кто успел им воспользоваться продолжать использовать, хотят лишь 57%.

🔜 В случае с Python - это 40% и 60% соответственно. В случае с Rust, это 30% и 85%. Знают о языке не так много, но большинство тех, кто попробовали, остаются им довольны! Я тоже решил обратить на него взгляд и скоро поделюсь своими впечатлениями.

На прикреплённой картинке изображена миграция разработчиков между языками программирования. Как видно, из JS обычно "уходят", а в Rust "приходят".

#находки
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔3👍1🔥1🦄1👾1
Друзья, как часто вы "копибарите"? 🤓

#мемы
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8🦄1👾1
⚡️ «Накрутить нельзя писать честно» - где поставить запятую?

Можно по-разному относиться к «накручиванию» опыта в IT, но что если я скажу вам, что этот подход работает везде?

Концепция "fake it till you make it" (Притворяйся, пока не сделаешь это правдой) распространена во всех сферах:

🟢 Социальный психолог, Эми Куди рассказывает — Когда мы показываем уверенность, или хотя бы думаем об этом, мы достигаем лучших результатов
🟢 Про это снимают сериалы: раз, два, три
🟢 Об этом поют и говорят звёзды Голливуда!

Но мало просто говорить. Давайте посмотрим на реальный пример.

Кейс: Фейк-ресторан в Нью-Йорке стал настолько популярным, что перестал быть фейком! 🤯

⚡️ Суть: несколько друзей сделали сайт, карточку на карте и даже сервис для бронирования столиков в фейк-ресторане. Они заполнили отзывы, сделали вид, что все места заняты и вызвали этим огромный ажиотаж! Более 900 реальных людей записались в лист ожидания в несуществующее заведение.

💥 В итоге они открыли заведение на один день, приготовили стейки и приняли гостей, заработав деньги и славу! А нам подарили ещё одно подтверждение, что надо не бояться своих желаний и возможности потерпеть неудачу.

Обретя успех, вы всё равно останетесь в плюсе!
🔥

#мудрость_на_каждый_день #мысли
Please open Telegram to view this post
VIEW IN TELEGRAM
👾6🔥4
❄️ Больше не ментор? ❄️

Недавно я попросил удалить меня из таблицы менторов и перестал проводить созвоны. Рассказываю почему: 👇

Для начала я хочу выделить инсайты, которые успел собрать за более чем 100 часов менторских созвонов:

1️⃣ Провожу созвоны, только если у человека уже есть база. Но что в моём понимании база - требует времени для объяснения. Решение: Распишу, что считаю необходимым, чтобы начать проходить собесы или созвоны с ментором 🔜 ждите пост

2️⃣ Самый полезный пост за всё время - пост про Базы данных. Этот пост я отправляю почти каждому, с кем общаюсь

3️⃣ Чаще всего на созвонах мне задают два вопроса: как составить резюме и что изучать, чтобы выйти на работу. Уже пишу посты про это 😉

Почему же я перестал менторить?

➡️ Закончил курс по разработке и меня сразу же позвали в другую компанию. Пишем курс в пять раз больше по объёму. Для записи видео-лекций арендована студия у Красной площади. Думаю, будет круто 🔥
➡️ Пересматриваю модель встреч. Решил сделать бесплатный "предсозвон". В рамках него: ответы на все классические вопросы и анализ, нужен ли полноценный созвон вообще
➡️ Разрабатываю полноценное менторское обучение. Со встречами на каждых выходных по разработке сервиса и ревью кода

#мой_путь #мысли
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥102🤔2👍1🦄1👾1
Инсайты исследования «Go-разработчиков 2023»

Продолжаю читать исследования, но теперь изучаю наш рынок. IT-сообщество devcrowd провело исследование, опросив 500 Go-разработчиков.

Казалось бы: раз они не пишут на Python, то и изучать нам там нечего. Но это не так. Сразу уточню, что в этом посте было 2 % (1 800+ человек) людей, которые ещё только изучают разработку и не работают профессионально. В отчёте от devcrowd только действующие разработчики, причём лишь 20 % на позиции Junior.

⚡️ ИНСАЙТЫ

🟣 1-2 года - среднее время "роста" специалиста до уровня Middle (моё мнение, что в Python то же самое)
🟣 75 % респондентов работают в продуктовых компаниях
🟣 62 % опрошенных ранее писали на другом языке. В большинстве случаев это PHP или Python (это подтверждает и статистика от stackoverflow)
🟣 20 % разработчиков не имеют высшего образования (как и за рубежом)
🟣 Половина разработчиков пишут только на Go, остальная половина использует так же Python (40 %) и JS (31 %). (стоит понимать, что JS используется для фронтенда, а Python используется "по любви")
🟣 Как и Python, Go часто используется для создания API/RPC или Веб-сервисов
🟣 Docker - самый популярный дополнительный инструмент (как и в отчёте)
🟣 Половина разработчиков (даже сеньоры) отметили, что плохо понимают архитектуру приложений и хотели бы изучить эту тему. Второе и третье места заняли распределённые системы и алгоритмы
🟣 Каждый пятый Go-разработчик ждёт оптимизации обработки ошибок, улучшенной работы с массивами, и другие вещи, которые уже есть в Python
🟣 Почти половина ответила, что не использует инструменты ИИ в своей работе
🟣 Только треть опрошенных ответила, что может свободно общаться на английском. 13 % не изучают английский, зато 52 % могут читать техническую литературу
🟣 40 % среди тех, кто хочет сменить язык, рассматривают Rust

И опять же, мы видим Rust. Становится всё интереснее с ним знакомиться!

#находки
Please open Telegram to view this post
VIEW IN TELEGRAM
🦄51🔥1🤔1👾1
🫥 Феномен Rust 🫥

Вдохновившись отчётами devcrowd и stackoverflow, я решил изучить феномен языка Rust.

🫥 Последние 8 лет Rust занимает лидирующие позиции в топе самых "желанных" языков. Более 80 % разработчиков, которые пробовали писать на нём, остаются довольны. При этом язык очень свежий: работа над ним началась в 2006 году, однако первая версия вышла в 2015.

Обычно языки программирования либо быстрые (C, C++), либо безопасные (Haskell, Ruby). Rust же умудрился быть и быстрым и безопасным одновременно. Под безопасностью обычно понимают работу с памятью. Может ли язык сам почистить выделенную память или это ответственность разработчика ⚙️

Интересный факт: создатель Rust-а был вдохновлён на его создание... сломанным лифтом! Из-за проблем с памятью тот не работал. У меня есть похожий кейс - когда вылетает приложение Телеграм я вижу, что проблема в работе с памятью.

Язык достаточно популярный, на нём пишут почти 3 миллиона разработчиков, при этом в 2021 писал всего 1 миллион. Сам Rust похож на языки C и C++, при этом он такой же удобный, как Python.

🔹 А на картинке к этому посту я написал "Hello, world!" на Rust.

#находки
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🦄1👾1
This media is not supported in your browser
VIEW IN TELEGRAM
🤔 Как часто вы задумываетесь о том, для чего вы делаете те или иные действия?

К примеру, зачем мы смотрим фильмы?

В детстве я довольно редко смотрел фильмы. За год мог посмотреть всего 5-6 штук. В более сознательном возрасте я понял, что их просмотр - это не пустая трата времени. На мой взгляд, фильмы отлично показывают нам, как можно поступать в разных жизненных ситуациях. Что нужно сказать или сделать, и какие результаты можно получить.

На днях посмотрел фильм «Круэлла» и не мог пропустить эту цитату:
«Я приукрасил твоё резюме, переписал его заново. Все так делают. А ещё я присочинил рекомендации.»

Кстати в фильме, Круэллу, для которой её друг Джаспер «доработал» резюме, взяли на работу 😁

#мысли
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍1👾1
🫥 Чем хорош Rust для продакшена? (с) - Часть 1

Несмотря на то, что Rust - один из самых любимых языков среди разработчиков, среди компаний популярностью он пока не пользуется. Это подтверждает статистика HH.ru: rust - 70 вакансий, python - 2500+ вакансий. Разберёмся: в каких случаях компании стоит выбрать Rust?

🪐 Для каких проектов подходит Rust?

В статье "Чем хорош Rust для продакшена" автор отмечает, что организации в первую очередь ценят продуктивность, стабильность и удобство при долгосрочной поддержке, а не производительность инструмента.

Это интересный тезис, поскольку чаще всего при обсуждении языка разработки или другого инструмента мы говорим именно про производительность. При этом мы не погружаемся в специфику, ведь иногда мы можем неверно оценивать сложность задачи. Автор статьи выделил преимущества языка, благодаря которым его выбирают крупные компании.

Преимущества языка:

Надёжность и стабильность
Язык rust славится своей надёжностью, на него перешли в npm - 1.3 миллиарда скачиваний в сутки требуют надёжной инфраструктуры. Особенно важно то, что баги, обнаруженные в продакшене, исправлять дороже и дольше в 30 раз, чем обнаруженные на проработке, и в 6 раз относительно этапа разработки (исследование). Так что использование rust с его строгой типизацией и особенной работой с памятью позволяет значительно снизить расходы и упростить рефакторинг.

Мнение сотрудников x(twitter) и npm лишь подтверждает этот тезис.

#просто_о_сложном #находки
Please open Telegram to view this post
VIEW IN TELEGRAM
🦄4👍2🔥1
🫥 Чем хорош Rust для продакшена? (с) - Часть 2

Продолжаем тему Rust и его преимуществ для компании. А первая часть поста тут.

Предсказуемость при работе
Эта особенность связанна с предыдущей, особенно в отношении того, что важнее не скорость работы процесса, а консистентность. В Discord перешли с языка Go на Rust именно из за проблемы непредсказуемости работы сборщика мусора в Go.
Мнение сотрудников Discord и Cloudflare: "Для пользователя равномерная скорость работы сервиса значительно важнее быстродействия ввода-вывода"

Сокращение затрат
Rust отличается низкими издержками при выполнении. По этой причине сервис AWS Firecracker написан на rust.

Это выдержка лишь из 20% статьи, выделил самые интересные моменты, которых достаточно, что бы понять что rust крутой язык.

🔊 Моё мнение по использованию Rust:
Python идеальный язык, чтобы написать MVP и запустить сервис. Однако, когда тот уже готов и показал свою прибыльность, переписывайте его на rust! Rust обеспечивает качественную поддержку и расширение, что существенно экономит как денежные, так и временные ресурсы.

На иллюстрации к посту изображена корреляция обнаружения проблем при работе с rust и другими "традиционными" языками. Видно, что при работе с rust, проблемы обнаруживаются гораздо раньше, в связи с чем экономятся ресурсы компании.

#просто_о_сложном #находки
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍1👾1
Подсмотрели у капибары лайфхак и сразу бежим делиться с вами! 💥

А какую рекламу любите вы (если вообще такая есть)? А вот выбор нашей редакции, олды оценят.

#мемы
🦄62
Я не верю в эзотерику, но у меня точно есть проклятие. Кстати, вы знали, что есть эзотерические языки программирования?

Решил вот поделиться с вами трудностями, с которыми сталкиваюсь. Всегда, когда я сталкиваюсь с информационными технологиями, я натыкаюсь на проблемы.

📌 В 2015 году не смог начать работать с C# (и слава богу), потому что мой компьютер не поддерживал его.

📌 В 2021 не смог поставить себе windows 11 из-за особенностей процессора.

📌 Бессчётное количество раз уже переустанавливал Ubuntu, но каждый раз происходит какая-то проблема: то установочный диск форматируется, то система "неправильно" ставится.

📌 В реальной работе тоже хватает трудностей. Если нужен доступ к системе, то его всегда дают не полностью, и приходиться переделывать.

📌 Я даже смог сломать налоговую, у меня в графу "номер паспорта" внесена буква, из-за чего налоговая не может передать мои данные в сторонние API, так как те принимают только числа.

📌 Нет ни одной компьютерной игры, в которой я бы не находил баги.

Возможно мне стоило стать QA и ломать системы за деньги?🤔 А какие трудности в программировании встречаете вы?

#мысли
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥61🦄1👾1
🫥 БАЗЫ — то, что нужно любому разработчику

В этот раз поговорим про git - систему контроля версий. Вы наверняка слышали про гит. Без него сложно представить коммерческую разработку. Но даже если вы знакомы с ним, то первый мердж реквест (запрос на слияние) точно запомнится вам на всю жизнь 😁

🟡 Казалось бы, почему такой важный инструмент, которым пользуется каждый разработчик, выглядит таким сложным или даже пугающим? Я уверен: дело в том, что не хватает практики. И в случае с гитом, без реальных проектов её найти не очень легко.

Собрал три инструмента, которые должен попробовать каждый разработчик. Все они нацелены на практическое использование, так что навыки вы точно получите. Итак, в порядке изучения:

1️⃣ Реальный репозиторий для практики: подробные инструкции на более 50 языках! Вот на русском. Буквально по полочкам разложен процесс того, как работать с гитом. Для тех, кто ещё не работал с гитом ознакомление обязательно.

2️⃣ Игра про гит - геймифицированный опыт всегда работает хорошо. Скачивайте и прокачивайтесь!

3️⃣ Изучение команд гита с визуальным отображением — по названию всё и так понятно. Если вам не хватает визуального отображения действий при работе с гитом, то тут можно понять, что именно происходит при использовании разных команд. Подходит даже тем кто уже работает с гитом, тут подробно изучаются команды вроде cherry-pick. Отдельный плюс — всё на русском.

Делитесь в комментариях, как вы изучаете современные инструменты для разработки 🔽

#находки #мудрость_на_каждый_день
Please open Telegram to view this post
VIEW IN TELEGRAM
🦄6👍2🔥1👾1
🫥 Неожиданное открытие!

В одном из прошлых постов я жаловался на то, что чат GPT работает не очень хорошо. Оказывается его можно значительно улучшить, просто добавив в конце запроса такой текст, как на картинке. Качество и подробность ответа вырастают заметно! В комментариях написал текстом, можно скопировать.

А вы говорите, что роботы не имеют чувств... 🫶

PS. Прочитал статью о том, как используя БЯМ, делают открытия в математике и других науках. БЯМ - большие языковые модели, вроде чата GPT.
Учёные дают чату основную версию кода и улучшенную, которая почти решает задачу и просят дописать третью часть. Третья часть как раз и должна решить проблему, решения для которой нет у человечества 🤖

Попробовал такой же подход, и действительно стало проще работать с чатом! То есть мы даём ему 1 и 2 шаг, просим добавить 3. Потом можно попросить и 4, 5 и так далее. Конечным итогом, который вам нужен, может быть и 10 шаг.

🔆 По сути это декомпозиция, просто интересный взгляд на неё.

#находки #мысли
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🤔1👾1
👀 Заметили, что наша капибара часто заказывает периферию и решили проследить за ней.

А вы пользуетесь корпоративным оборудованием? ⬇️

#мемы
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🦄2
🚀7 секретов освоения алгоритмов🚀

Решил 400 задач на литкоде, что бы выучить Python. Вам достаточно решить всего 150, чтобы получить работу, даже если вы хотите работать в Google или Yandex!

Проанализировал несколько мнений о порядке решения задач и дополнил своим:
(вот самые ценные мнения: одно, другое - оба автора получили оффер в Google!)

🟣Решать задания нужно тему за темой. Сначала простые, потом сложные задания
🟣Решайте одну задачу не более 40 минут
🟣Если не успеваете решить, отрывайте разбор задачи (editorial) если он есть, либо решения (solutions)
🟣Читайте 2-3 варианта решения, пока не поймёте алгоритм
🟣Возвращаетесь к задаче и решаете её так, как поняли
🟣Как только вы научитесь решать задачи менее, чем за 40 минут, переходите к следующей сложности easy -> medium -> hard
🟣На любом уровне сложности используются одинаковые алгоритмы, просто сложные задачи более комплексные

⁉️ Какие именно задачи решать?

Собрал сайт
, где выбрал 150 лучших задач по разным категориям. Разделил их на темы по возрастанию сложности.

🟠В каждой теме только бесплатные задания с ссылкой на литкод
🟠Для каждого задания добавляю описания заданий на русским языке, алгоритмическое решение и реализацию на языках Python и Rust
🟠 Приятный бонус: сайт сделан как документация, так что после него будет легко читать большинство документаций

Иностранный аналог - roadmap (часть заданий премиум, но есть "бесплатная копия")

Поздравляю, всего за один час в день вы научились решать алгоритмические задачи!

А я как раз сейчас учу rust именно по этим заданиям, так что решения выкладываю по мере прогресса ✍️

#python_полезности #находки
Please open Telegram to view this post
VIEW IN TELEGRAM
🦄5🔥32👍2👾1
Нотация Большой О (Big O Notation)

Научиться решать алгоритмы — это только полдела. Нужно ещё уметь анализировать их на эффективность. Чаще всего для измерения эффективности алгоритма используется Нотация Большой О (Big O Notation) и записывается как O(n), то есть большая О и какой-то показатель n.

🟣 Что такое `O(n)`?
Это математическое описание сложности алгоритма. Для записи используется алгебраическое обозначение, где в скобках указывается зависимость от входных данных(обычно длины).

Пример:
Сложность сортировки выбором равна O(n²). Такая сложность читается, как "О(большая) от n в квадрате". Буква n представляет размер полученных данных. Запись (n²) показывает, что для сортировки потребуется количество действий, равное длине входных данных в квадрате.

🟣Зачем нам это нужно?
Представим игру Судоку. Когда пользователь вводит число, необходимо проверить, что оно не встречается в ряду, столбце и подквадрате. Общий размер входных данных, при максимально заполненном судоку, равен 81 числу (9 * 9). Мы воспользуемся оценкой асимптотической сложности, где будем измерять "условные" действия.

🟣Самые популярные сложности алгоритмов:

🟣 O(1) - при константной сложности всегда будет одинаковое количество действий, даже если судоку 100 на 100 ячеек.
🟣 O(log n) - логарифмическая сложность означает значительное сокращение при увеличении. Судоку 9*9 требует 6 действий (log81(2) = 6.33), а 100*100 потребует всего 13 действий.
🟣 O(n) - линейная сложность напрямую зависит от входных данных. Судоку 9*9 => 81 действие, 100*100 => 10_000.
🟣 O(n²) - квадратичная сложность означает значительное увеличение операций относительно увеличения входных данных. Так для 9*9 => 6_561 операций, а 100*100 требует 100 миллионов действий!

При логарифмической сложности пользователь вряд-ли заметит время на расчёты, даже если его судоку будет размеров 100 на 100. Если алгоритм будет неоптимальным, квадратичным или даже хуже, то вероятно он не дождётся проверки судоку.

💬Подробнее про нотацию большой О
💬А вот моё решение судоку
Please open Telegram to view this post
VIEW IN TELEGRAM
👾6👍21
🚗 А вы хорошо себя вели в уходящем году?

Капибара уже складывает последние подарки в мешок и совсем скоро покинет свою капибаречью нору, отправляясь их дарить.

Как думаете, какой подарок она заготовила для вас? 🎁

Напишите в комментариях ваш самый добрый и хороший поступок, который вы сделали в этом году. Вдруг капибара что-то упустила? 🔽

#мемы
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🦄3🔥21👾1