Forwarded from Timur
🟢Алгоритм
⚙️Суть алгоритма:
💡Начинаем с того что в
принимаем не отсортированный массив. Потом
идёт проверка если массив пустой или имеет только
1 элемент, мы считаем его отсортированным и завершаем
работу функции (или возвращаем передаваемый массив, если
реализация не через указатель). Дальше пробегаемся по
всему массиву и на каждой итерации первого цикла, мы
вызываем 2 цикл, который уже от текущего элемента
до нулевого элемента(то есть начало массива). И при
этом сравниваем текущий элемент с предыдущим, и
если текущей элемент окажется меньше предыдущего, то меняем местами
их в массиве, в противном случаи выходим из 2 цикла, и так до конца всего
массива. На выходи получаем отсортированный массив.
📉Сложность:
⌚️Время:
💾Память:
#algorithms #go
Insertion Sort(Сортировка вставки) на Golang ⚙️Суть алгоритма:
💡Начинаем с того что в
function insertionSort мы принимаем не отсортированный массив. Потом
идёт проверка если массив пустой или имеет только
1 элемент, мы считаем его отсортированным и завершаем
работу функции (или возвращаем передаваемый массив, если
реализация не через указатель). Дальше пробегаемся по
всему массиву и на каждой итерации первого цикла, мы
вызываем 2 цикл, который уже от текущего элемента
(*(nums[i])) до нулевого элемента(то есть начало массива). И при
этом сравниваем текущий элемент с предыдущим, и
если текущей элемент окажется меньше предыдущего, то меняем местами
их в массиве, в противном случаи выходим из 2 цикла, и так до конца всего
массива. На выходи получаем отсортированный массив.
📉Сложность:
⌚️Время:
O(n**2)💾Память:
O(1)#algorithms #go
Forwarded from Timur
✅Поиск самого часто встречающегося элемента в векторе на
📚Напишите функцию
и возвращает элемент, который встречается чаще всего.
Если таких элементов несколько, вернуть любой из них.
👁🗨Пример №1:
«
»
// or 1
👁🗨Пример №2:
«
»
// or 2 or 3
👁🗨Пример №3:
«
»
💡Решение:
На картинке
📉Сложность алгоритма:
⌚️Время -
💾Память -
#task #rust
Rust 📚Напишите функцию
most_frequent, которая принимает вектор и возвращает элемент, который встречается чаще всего.
Если таких элементов несколько, вернуть любой из них.
👁🗨Пример №1:
«
[1, 3, 2, 3, 4, 1, 3, 2, 1]»
3 // or 1
👁🗨Пример №2:
«
[1, 1, 2, 2, 3, 3]»
1// or 2 or 3
👁🗨Пример №3:
«
[10, 0, 2, -1, 2]»
2💡Решение:
📉Сложность алгоритма:
⌚️Время -
O(n)💾Память -
O(n)#task #rust
🟢
📚
которая позволяет создавать глобальное состояние для ваших приложений с минимальными
усилиями. Она часто используется в экосистемах, таких как React, и предоставляет
простой API для создания и управления состоянием в приложении.
⚙️Особенности:
➖
➖
➖
➖
⛓️Источники:
📑Doc: тут
💾GitHub: тут
#frontend #lib #js
Zustand библиотека управления состоянием.📚
Zustand — это библиотека управления состоянием для JavaScript и TypeScript, которая позволяет создавать глобальное состояние для ваших приложений с минимальными
усилиями. Она часто используется в экосистемах, таких как React, и предоставляет
простой API для создания и управления состоянием в приложении.
⚙️Особенности:
➖
Минимальный и гибкий API➖
Реактивность➖
Производительность➖
Без провайдеров/контекста⛓️Источники:
📑Doc: тут
💾GitHub: тут
#frontend #lib #js
Forwarded from Timur
Forwarded from Timur
✅Задача «
📚Дано целое число
пока в результате не останется только одна цифра, и верните ее.
👁🗨Пример 1:
«
»
👁🗨Пример 2:
«
»
💡Решение:
В решении используется чистая математика,
и скажу честно я не смог решить это задачу
за O(1) самостоятельно. Меня довольно сильно удивило
такое короткое и лаконичное решение задачи,
хотя казалось бы что надо использовать цикл/рекурсию
для решения(что я по началу и сделал ) но понял что сложность
алгоритма в таком случаи было бы O(n) или что ещё хуже O(n**2).
В задачи было сказано что её можно решить за O(1), что меня естественно удивило.
И про гуглив решение нашёл как решить эту задачу за время O(1).
📉Сложность:
⌚️Время:
💾Память:
#algorithms #java
Add Digits»📚Дано целое число
num, многократно складывайте все его цифры, пока в результате не останется только одна цифра, и верните ее.
👁🗨Пример 1:
«
num = 38»
2👁🗨Пример 2:
«
num = 1701»
9💡Решение:
и скажу честно я не смог решить это задачу
за O(1) самостоятельно. Меня довольно сильно удивило
такое короткое и лаконичное решение задачи,
хотя казалось бы что надо использовать цикл/рекурсию
для решения(что я по началу и сделал ) но понял что сложность
алгоритма в таком случаи было бы O(n) или что ещё хуже O(n**2).
В задачи было сказано что её можно решить за O(1), что меня естественно удивило.
И про гуглив решение нашёл как решить эту задачу за время O(1).
📉Сложность:
⌚️Время:
O(1)💾Память:
O(1)#algorithms #java
Forwarded from Timur
📰Статья посвященная оптимизации
📑Статья объясняет, как уменьшить количество ненужных рендеров
компонентов, используя такие методы, как мемоизация с помощью
правильно управлять состоянием и оптимизировать работу с компонентами,
чтобы приложение оставалось быстрым и масштабируемым.
📚Читать: тут
#data #frontend
React app.📑Статья объясняет, как уменьшить количество ненужных рендеров
компонентов, используя такие методы, как мемоизация с помощью
React.memo, useMemo и useCallback. Автор также обсуждает, как правильно управлять состоянием и оптимизировать работу с компонентами,
чтобы приложение оставалось быстрым и масштабируемым.
📚Читать: тут
#data #frontend
Media is too big
VIEW IN TELEGRAM
🟢React Bits
📓Это библиотека с анимированными UI-компонентами,
которые можно легко интегрировать в проекты.
⚙️В коллекции более 30 компонентов, включая кнопки,
карточки, модальные окна и другие элементы интерфейса.
Каждый компонент можно настроить под свои нужды, благодаря
гибким пропсам и настройкам.
⚙️Документация на сайте подробная и понятная, с примерами
использования и возможностью взаимодействовать с компонентами
прямо в браузере.
🔗Doc: тут
#frontend #lib
🟢Ключевые паттерны проектирования
📚В статье приводятся примеры практического применения,
включая создание компонентов, разбиение бизнес-логики и UI,
использование пользовательских хуков для обработки данных и у
правление сложным состоянием с помощью useReducer.
📰Читать: тут
#articles #frontend
React app📚В статье приводятся примеры практического применения,
включая создание компонентов, разбиение бизнес-логики и UI,
использование пользовательских хуков для обработки данных и у
правление сложным состоянием с помощью useReducer.
📰Читать: тут
#articles #frontend
✅Задача на
📚Создайте программу, которая фильтрует список
строк и возвращает список, содержащий только имена ваших друзей.
⚙️Если в имени ровно 4 буквы, вы можете быть уверены,
что это ваш друг! В противном случае вы можете быть
уверены, что это не так...
👁🗨Пример:
«
»
#task #python
Python:📚Создайте программу, которая фильтрует список
строк и возвращает список, содержащий только имена ваших друзей.
⚙️Если в имени ровно 4 буквы, вы можете быть уверены,
что это ваш друг! В противном случае вы можете быть
уверены, что это не так...
👁🗨Пример:
«
["Ryan", "Kieran", "Jason", "Yous"]»
["Ryan", "Yous"]#task #python