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
This media is not supported in your browser
VIEW IN TELEGRAM
Создавайте файл и его папки одним шагом

#vscode
🔥1
Forwarded from Timur
DFS algorithm С++ - Поиск в глубину

📚Алгоритм поиска в глубину (DFS, Depth First Search) обходит граф так,
что он идет "вглубь" от начальной вершины по каждому пути до конца,
прежде чем вернуться назад и исследовать следующий путь. Давайте разберем
его пошагово.


⚙️Как работает алгоритм:

💡1.Начинаем с начальной вершины (например, 0).
💡2.Помечаем её как посещённую.
💡3.Идем по всем её смежным вершинам.
💡4.Если соседняя вершина ещё не посещена, то:
- Переходим к ней и повторяем процесс (углубляемся).
💡5.Если все соседи посещены или их нет, возвращаемся назад и ищем другие пути.
💡6.Продолжаем, пока не обойдем все достижимые вершины.

📑Читать: тут

#algorithms #cpp
Forwarded from Timur
Задача на Python:

📚Напишите функцию, которая принимает массив из 10 (строго 10 элементов)
целых чисел (от 0 до 9) и возвращает строку из этих чисел в виде
телефонного номера.


👁‍🗨Примеры:
create_phone_number([1, 2, 3, 4, 5, 6, 7, 8, 9, 0]) # => returns "(123) 456-7890"

create_phone_number([5, 2, 1, 3, 7, 1, 2, 0, 2, 2]) # => returns "(521) 371-2022"


#task #python
Forwarded from Timur
🔥4
Forwarded from Timur
Sort Merge in Python

📚Сортировка слиянием это алгоритм "разделяй и властвуй", который
разбивает массив на две части, рекурсивно сортирует их, а затем
объединяет в один отсортированный массив.


⚙️Принцип работы:
Разделение: массив разбивается на две равные части.
Сортировка: каждая часть сортируется рекурсивно.
Слияние: два отсортированных подмассива объединяются в один.

📉Сложность: O(n log n)

#algorithms #python
👍1
Forwarded from Timur
Задача для Java «Binary Search»

📚Дан массив целых чисел nums, отсортированный в порядке возрастания,
и целочисленный
target.

📚Напишите функцию для поиска target в nums. Если target существует,
то верните его индекс. В противном случае верните значение -1.


⚙️Необходимо написать алгоритм со сложностью выполнения O(log n).

👁‍🗨Пример №1:
« nums = [-1,0,3,5,9,12], target = 9
» 4

👁‍🗨Пример №2:
« nums = [-1,0,3,5,9,12], target = 2
» -1

#task #java
Forwarded from Timur
Конвертер CSV в JSON на Python

📚Напишите скрипт, который принимает путь к файлу CSV, конвертирует его
содержимое в формат
JSON и сохраняет результат в новый файл с тем же именем,
но с расширением
.json.

👁‍🗨Пример:

⚙️data.csv:

id,name,age
1,Alice,30
2,Bob,25
3,Charlie,35


⚙️data.json:
[
{"id": "1", "name": "Alice", "age": "30"},
{"id": "2", "name": "Bob", "age": "25"},
{"id": "3", "name": "Charlie", "age": "35"}
]


#task #python
Forwarded from Full stack dev
🤔1
Реализация простого HashMap на C++

📚Создание простой версии HashMap на с++,
key типа string, value типа int. Для решение проблемы с коллизии я
использовал алгоритм
"Прямой адресации".

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

#define FILL_FACTOR 75 - это параметр который говорит когда стоит расширять HashMap.
Если количество элементов if this->count * 100 >= this->capacity * FILL_FACTOR то мы расширяем наш HashMap, этим занимается realloc().

int get() - Просто выдаёт значение по ключу

long hashed() - это функция преобразует key в хэш

void init() - инициализируем и выделяем память на наш HashMap.

typedef struct {} Item - Описывает элемент внутри HashMap.

elements - элементы в HashMap.

capacity - выделенный размер для элементов в HashMap.

count - количество заполненных элементов в HashMap.

------------------------------

📑Почитать о работе HashMap: тут

#algorithms #cpp
🟢Задача на С++:

📚Завершите решение так, чтобы оно разделило строку на пары
из двух символов. Если строка содержит нечетное количество
символов, то следует заменить пропущенный второй символ в
последней паре символом подчеркивания ('_').


👁‍🗨Примеры:

« "abc"
» ["ab", "c_"]

« "abcdef"
» ["ab", "cd", "ef"]

#task #cpp
2