Python вопросы с собеседований
25.6K subscribers
588 photos
37 videos
17 files
470 links
Вопросы с собеседований по Python

@workakkk - админ

@machinelearning_interview - вопросы с собесдований по Ml

@pro_python_code - Python

@data_analysis_ml - анализ данных на Python

@itchannels_telegram - 🔥 главное в ит

РКН: clck.ru/3FmrFd
Download Telegram
⁉️Машинное обучение кажется чем-то сложным и недосягаемым? Всё проще, чем вы думаете!

Первый шаг — разобраться, как устроен ML-процесс и научиться работать в Jupyter Notebook — инструменте, с которого начинают все специалисты в Data Science.

На открытом уроке вы шаг за шагом поймёте, как строится путь от данных до модели. Научитесь запускать эксперименты в Jupyter Notebook и Google Colab, работать с виртуальными окружениями и не бояться “сломать” систему. Всё — в формате простых и наглядных примеров.

После урока вы сможете уверенно начать свой первый ML-проект и поймёте, какие инструменты нужны, чтобы перейти от теории к практике.

➡️ 13 ноября в 20:00 МСК. Открытый вебинар проходит в преддверии старта курса «Machine Learning. Basic». Регистрируйтесь и сделайте первый шаг в машинное обучение без страха и путаницы:т  https://otus.pw/cARZ/?erid=2W5zFGrhViQ

Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
2
⚡️ Хитрая задача на Python: кратчайший подмассив с суммой ≥ K (O(n))

Задача. Дан массив A (могут быть отрицательные) и K. Найти минимальную длину подмассива с суммой ≥ K. Если нет — вернуть -1.

Подвох. С отрицательными числами не работает двухуказательную. Решение — префиксные суммы + монотонная дека.

Идея.
Пусть P[i] — префиксная сумма до i. Нам нужно минимизировать i - j при условии P[i] - P[j] ≥ K.
Храним индексы j в деке так, что значения P[j] строго возрастают:
- Пока текущий P[i]P[deque[0]] ≥ K — обновляем ответ и выкидываем голову (нашли короткий кандидат).
- Пока P[i] ≤ P[deque[-1]] — выкидываем хвост (бессмысленные, более «жирные» префиксы).
- Затем добавляем i.

Сложность: каждый индекс заходит/вылетает из деки по разу → O(n).

Короткая реализация

from collections import deque
from math import inf
from typing import List

def shortest_subarray_at_least_k(A: List[int], K: int) -> int:
P = [0]
for x in A: P.append(P[-1] + x)
dq, ans = deque(), inf # dq хранит индексы префиксов, их суммы возрастают
for i, s in enumerate(P):
while dq and s - P[dq[0]] >= K:
ans = min(ans, i - dq.popleft())
while dq and P[dq[-1]] >= s:
dq.pop()
dq.append(i)
return -1 if ans is inf else ans

# Примеры
if __name__ == "__main__":
print(shortest_subarray_at_least_k([2, -1, 2], 3)) # 3 (весь массив)
print(shortest_subarray_at_least_k([1, 2, 3, 4], 6)) # 2 (3+3 нет, но 2+4 или 3+4 длина 2)
print(shortest_subarray_at_least_k([84, -37, 32, 40, 95], 167)) # 3


Почему это работает?
Если у нас есть два индекса j1 < j2 и P[j1] ≥ P[j2], то j1 никогда не даст более короткого валидного подмассива, чем j2, — его можно выбросить (инвариант монотонной деки).
3
Не пропусти МТС True Tech Champ — масштабный фестиваль 21 ноября для тех, кто живет технологиями 🔥

Тебя ждут:

▫️ Конференция с международными спикерами. Эксперты расскажут о трендах в ИИ и инновациях в индустрии.
▫️ ИТ-качалка. Наращивай экспертизу на воркшопах.
▫️ Шоу-финал ИТ-чемпионата. Более 250 талантов со всей России сразятся в лайв-кодинге и программировании роботов на скоростное прохождение лабиринтов со спецэффектами. Выбирай и болей за фаворитов.
▫️ Айтивности. Тебя ждут бои роботов, кодерские челленджи, пайка плат и не только. Заработай True Coins и обменяй их на стильный мерч.
▫️ HR-Hub. Команда МТС расскажет о возможностях для развития в компании и поможет перезагрузить карьерный трек.
▫️ Афтепати со звездными хэдлайнерами. Зажги под популярные хиты.

Когда: 21 ноября, МТС Live Холл в Москве и онлайн.

Регистрируйся на сайте. Участие бесплатно, количество мест ограничено.
🔥21
This media is not supported in your browser
VIEW IN TELEGRAM
Возможности Python реально впечатляют 😱
Please open Telegram to view this post
VIEW IN TELEGRAM
😁23🥱7🕊2🥴1
🧠 DeepSeek-OCR: Оптимизация оптического распознавания текста

DeepSeek-OCR — это модель для исследования роли визуальных энкодеров в контексте LLM. Она предлагает новые подходы к сжатию визуального текста и поддерживает различные режимы разрешения. Идеально подходит для задач OCR и обработки документов.

🚀Основные моменты:
- Модель для оптического распознавания текста.
- Поддержка нескольких режимов разрешения.
- Интеграция с Hugging Face для удобного использования.
- Исследование сжатия визуального текста.

📌 GitHub: https://github.com/deepseek-ai/DeepSeek-OCR

#python
👍2
🔍Тестовое собеседование на Middle Python с Senior из X5 уже завтра!

Уже завтра(11 ноября) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.

Как это будет:
📂 Олег, старший разработчик в X5, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Олег будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Олегу

Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.

Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot

Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM
1👎1😁1
💡 12 команд Git, которые должен знать каждый:

git init - создаёт новый Git-репозиторий в текущей папке (начинает контроль версий).

git add - запоминает изменения, подготавливая их для сохранения.

git commit - сохраняет подготовленные изменения с твоим комментарием (например, «починил баг» или «добавил кнопку»).

git push - отправляет сделанные коммиты в облачный (удалённый) репозиторий, чтобы их видели другие.

git pull - забирает последние изменения из облака и добавляет их в твою рабочую версию (автоматически объединяет).

git remote - помогает управлять ссылками на удалённые репозитории (добавлять новые или смотреть, какие уже подключены).

git branch - показывает существующие ветки, создаёт новые и позволяет переключаться между ними (чтобы работать параллельно с разными версиями кода).

git fetch - скачивает последние изменения из облака, но не объединяет их с текущим кодом (можно посмотреть заранее, что изменилось).

git checkout - переключает твою рабочую папку на другую ветку или на конкретный коммит (например, для тестирования).

git merge - объединяет изменения из одной ветки с текущей веткой (сливает их воедино).

git status - показывает, какие файлы были изменены, какие готовы к коммиту, а какие ещё нет (текущее состояние проекта).

git reset - позволяет вернуться назад по истории кода, отменив изменения до конкретного коммита (например, если что-то пошло не так).


🎚️ Сохраняйте себе или отправляйте друзьям - еще пригодится.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81