Full stack dev
61 subscribers
356 photos
50 videos
4 files
99 links
"Full Stack Dev & Computer Science" – Канал для разработчиков, которые хотят
расширить свои знания в Full Stack и углубиться в основы и новейшие тренды Computer Science.
Здесь вы найдете материалы по frontend и backend разработке, работе с базами данных,
Download Telegram
Forwarded from Timur
🟢Задача на Python «Can Place Flowers»

📚У вас есть клумба, где одни участки засажены (1), а другие пусты(0).
Цветы нельзя сажать на соседних участках.


📚Дан массив flowerbed (0 — пусто, 1 — занято) и число n. Нужно определить,
можно ли посадить n цветов, соблюдая правило, чтобы соседние участки оставались
свободными.


⚙️Верните true, если это возможно, и false — если нет.

👁‍🗨Пример 1:
« flowerbed = [1,0,0,0,1], n = 1
» True

👁‍🗨Пример 2:
« flowerbed = [1,0,0,0,1], n = 2
» False

#task #python
🔥1
Forwarded from Timur
Задача для Python «Jump Game»

📚Дан целочисленный массив nums. Изначально вы
находитесь на первом элементе массива. Каждый элемент
массива содержит максимальную длину прыжка из этой позиции вперед.


Верните значение true, если вы можете достичь последнего
индекса, или значение
false в противном случае.

👁‍🗨Примеры:
« nums = [2,3,1,1,4]
» true
# Прыгаем на 1 шаг от индекса 0 к 1, затем на 3 шага к последнему индексу.


« nums = [3,2,1,0,4]
» false
# Как бы мы не прыгали, мы всегда будем застревать на
индексе 4 и не сможем дойти до конца массива.


#task #python
🤔1
Генератор случайных паролей с настройками на Python

📚Напишите функцию, которая генерирует случайный пароль
заданной длины. Пароль должен быть сформирован на
основе пользовательских требований:


Использовать ли цифры.
Использовать ли буквы верхнего и/или нижнего регистра.
Использовать ли специальные символы.

👁‍🗨Примеры:

« generate_password(
length=12, use_digits=True,
use_uppercase=True, use_lowercase=True,
use_specials=False
)

» A1b2C3d4E5f6
# примерно

—————————

« generate_password(
length=6, use_digits=True,
use_uppercase=True, use_lowercase=True,
use_specials=True
)


» 5J~Myg
# примерно


#task #python
Forwarded from Timur
🟢Задачка по Python

📚Напишите функцию, которая принимает текст и
возвращает наиболее часто встречающееся слово.
Игнорируйте регистр и знаки препинания.


👁‍🗨Пример:

« text = "Data science is fun. Science makes data fun, and data makes science better."
» "data"


#task #python
Forwarded from Timur
Задача «Reverse Words in a String»

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


👁‍🗨Пример 1:
« words = "the sky is blue"
» "blue is sky the"

👁‍🗨Пример 2:
« words = " hello world "
» "world hello"

👁‍🗨Пример 3:
« words = "a good example"
» "example good a"

#task #python
Таблица простых интегралов на Python

#algorithms #python
«Reverse string» на Python

📚Условие задачи: дается строка и целое число k, необходимо
развернуть первые
k символов на каждые 2k символов, отсчитываемых с начала.

📚Если есть несколько символов больших k, необходимо развернуть все из
них. Если есть меньше, чем 2k символов, но при этом больше или равно k
символов, то необходимо оставить все как есть.


👁‍🗨Примеры:

« string = "abcdefg", k = 2
» "bacdfeg"

« string = "abcd", k = 2
» "bacd"

📈Сложность:
⌚️Время: O(n)
💾Память: O(n)


#task #python
🟢Задача на Python:

📚Напишите функцию sort_list(lst: List[int]) так, чтобы оно отсортировало
переданный массив чисел. Если функция передает пустой
массив или значение
null/nil, то она должна вернуть пустой массив.

👁‍🗨Примеры:
« [5, 4, 3, 2, 1]
» [1, 2, 3, 4, 5]

« None
» []

« [1]
» [1]


#task #python
Forwarded from Timur
Задачка «Remove Vowels» по Python

📚Напишите функцию remove_vowels(s), которая принимает строку и
возвращает новую строку, из которой удалены все
гласные буквы
(a, e, i, o, u, y в любом регистре).

👁‍🗨Примеры:
« remove_vowels("Hello world")
» Hll wrld !

« remove_vowels("Python is great")
» "Pthn s grt"

#task #python
Forwarded from Timur
Полезные библиотеки Python

⚙️Tencent представили Hunyuan 3D 2.0 бесплатный генератор 3D-моделей нового уровня!


💾GitHub: тут

🖼Попробовать онлайн: тут


#python #soft
Задача на Python:

📚Создайте программу, которая фильтрует список
строк и возвращает список, содержащий только имена ваших друзей.


⚙️Если в имени ровно 4 буквы, вы можете быть уверены,
что это ваш друг! В противном случае вы можете быть
уверены, что это не так...


👁‍🗨Пример:

« ["Ryan", "Kieran", "Jason", "Yous"]
» ["Ryan", "Yous"]

#task #python
Forwarded from Timur
🟢Подсчёт количества слов в строке на Python

📚Напишите функцию count_words(text), которая принимает
строку и возвращает словарь, где ключами
являются слова из строки, а
значениями — количество их вхождений. Игнорируйте
регистр и знаки препинания.


👁‍🗨Пример:

« "Hello, world! Hello Python world."
» {'hello': 2, 'world': 2, 'python': 1}

#task #python
Инструмент «Mypy»

⚙️Mypy инструмент для статической типизации Python-кода,
который помогает находить ошибки ещё до запуска программы.
Теперь
Python становится чуть ближе к строгим языкам, как Java
или C#, но при этом остаётся таким же гибким!


⚒️Установка:
pip install mypy


⚒️Как запустить:
mypy <name_file>.py 


🔍Источник:
💾GitHub: тут
🌐Docs: тут

#technology #python
Forwarded from Timur
Задача на Python:

📚Вам будет предоставлена непустая строка.
Ваша задача - вернуть средние символы строки.
Если длина строки нечетная, верните средний символ.
Если длина строки четная, верните 2 средних символа.
Если строка пустая, то
return ""

👁‍🗨Пример №1:

« "test"
» "es"

👁‍🗨Пример №2:

« "testing"
» 't'

#task #python
Forwarded from Timur
Streamlit

📚Streamlit — это фреймворк на Python,
предназначенный для быстрого создания
интерактивных веб-приложений


📗Doc: тут
🌐GitHub: тут

#framework #python #fronted
Forwarded from Timur
Задача по Python: Уникальные элементы с сохранением порядка

📚Напишите функцию unique_order, которая принимает список и возвращает новый
список, содержащий только уникальные элементы, сохраняя их порядок
появления.


👁‍🗨Пример №1:

« [1, 2, 2, 3, 4, 3, 5, 1, -1, -2]
» [1, 2, 3, 4, 5, -1, -2]

👁‍🗨Пример №2:

« [1, 2, 2, 3, 4, 3, 5, 1]
» [1, 2, 3, 4, 5]

#task #python
🐍Python 3.14

📖Свежий релиз Python 3.14 привнёс кучу улучшений, ускорений и интересных фич.
Вот кратко о самом важном


⚙️Главные нововведения:
Отложенные аннотации — теперь аннотации не вычисляются сразу, а лениво (deferred evaluation).
Поддержка нескольких интерпретаторов через модуль concurrent.interpreters — шаг к изоляции и параллелизму без GIL.
Free-threaded mode улучшен — меньше накладных расходов, лучше производительность.
Новые template-строки (t"...") — возвращают объект шаблона, а не обычную строку.

📦 Стандартная библиотека
Новый модуль compression.zstd — полноценная поддержка Zstandard.
В asyncio появился CLI для инспекции задач (python -m asyncio ps).
Новый InterpreterPoolExecutor в concurrent.futures — параллелизм через подинтерпретаторы.

⚡️ Производительность
Tail-call оптимизации для внутренних C-функций (до +5 %).
GC стал быстрее и предсказуемее.

🧩 Итог
Python 3.14 - это про многопоточности без GIL, к ускорению и гибкости.

🔗Источник: тут

#python #news
1🔥1
Первый и второй замечательный
придел с графиком на
Python

⚙️Коротко о коде:

- class Limit - просто объект для абстракции задачи.

- method first_wonderful_limit - вычисление первого
замечательного предела.


- method second_wonderful_limit - вычисление второго
замечательного предела.


- private method _render - служит для отрисовки графиков
для функции первого и второго предела.


- для вычисления используем lib numpy,
numpy - мощная математическая библиотека.

- для отрисовки графиков используем lib matplotlib.

pip install numpy 
pip install matplotlib


#algorithms #python
Задача для Python «Daily Temperatures»

📚Дан массив целых чисел temperatures, где каждая температура соответствует
определённому дню.


⚙️Нужно вернуть новый массив answer, где каждое значение показывает, сколько дней нужно
подождать до более высокой температуры. Если такого дня не будет, записывается 0.


💡Подсказка:

Я нашёл два варианта решения задачи. Первый вариант O(n**2) это двойной цикл for.
Второй вариант это использование стека, там тоже есть циклы, но сложность алгоритма
O(n), что уже лучше. Ну само собой я использовал второй вариант решения по очевидным
причинам.


👁‍🗨Пример 1:
« temperatures = [73,74,75,71,79]
» [1,1,2,1,0]

👁‍🗨Пример 2:
« temperatures = [30,60,90]
» [1,1,0]

#task #python
👍2
📕 Алгоритм BFS (Breadth-First Search)

💡BFSпоиск в ширину — это алгоритм обхода графа, который сначала посещает всех соседей вершины, затем соседей этих соседей, и так далее.

⚙️ Как работает BFS
1. Берём любую стартовую вершину.
2. Добавляем её в очередь.
3. Пока очередь не пуста:
- достаём вершину из очереди,
- посещаем всех её соседей,
- непосещённых соседей добавляем в очередь.

Релизация на python:
from collections import deque

def bfs(graph, start):
visited = set()
queue = deque([start])
order = [] # порядок обхода

while queue:
vertex = queue.popleft()

if vertex not in visited:
visited.add(vertex)
order.append(vertex)

for neighbor in graph[vertex]:
if neighbor not in visited:
queue.append(neighbor)

return order

graph = {
'A': ['B', 'C'],
'B': ['D', 'E'],
'C': ['F'],
'D': [],
'E': ['F'],
'F': []
}

print(bfs(graph, 'A'))

#algorithm #python