GitPython
39 subscribers
63 photos
2 videos
66 links
Добро пожаловать в GitPython

Здесь мы собираем всю полезную информацию по программированию на Python: книги, статьи, репозитории и многое другое.

Присоединяйся к нам ❤️

Админ:
@DanteGern

По рекламе:
@Tomoko_ch
Download Telegram
Channel created
🔍Навигация по каналу
├──────────────────────────────┤
#Книги
#Курсы
#Статьи
#Репозитории
#Материалы
#Мемы
#Инструменты
#Видео
├──────────────────────────────┤
#Python
#Алгоритмизация

Наши каналы
Please open Telegram to view this post
VIEW IN TELEGRAM
📕 Глубокое обучение на Python

В данной книге вы познакомитесь с классификацией и сегментацией изображений, прогнозированием временных рядов, библиотекой Keras и многим другим.

Она подойдет для читателей со средним уровнем владения Python.

➡️ Скачать

GitUnion || #Книги #Python
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥31
👩‍💻 Алгоритмы сортировки (на примере Python)

🤔 Сортировка данных — частая задача в программировании и в собеседованиях. Давайте разберем на практике три популярных вида сортировки и определим их отличия


1. Сортировка пузырьком (Bubble Sort)
🤔 Сложность: O(n²) (медленный для больших данных)
Как работает: Последовательно сравнивает соседние элементы и меняет их местами, если они не в порядке.

Пример кода:
def bubble_sort(arr):
n = len(arr)
for i in range(n):
for j in range(0, n-i-1):
if arr[j] > arr[j+1]:
arr[j], arr[j+1] = arr[j+1], arr[j]
return arr


2. Сортировка вставками (Insertion Sort)
🤔 Сложность: O(n²) (но быстрее пузырька для почти упорядоченных данных)
Как работает: Берёт каждый элемент и вставляет в правильную позицию в уже отсортированной части массива.

Пример кода:
def insertion_sort(arr):
for i in range(1, len(arr)):
key = arr[i]
j = i - 1
while j >= 0 and arr[j] > key:
arr[j+1] = arr[j]
j -= 1
arr[j+1] = key
return arr



3. Быстрая сортировка (Quick Sort)
🤔 Сложность: O(n log n) (очень быстрый)
Как работает: Рекурсивно делит массив на части, сортируя их относительно опорного элемента.

Пример кода:
def quick_sort(arr):
if len(arr) <= 1:
return arr
pivot = arr[len(arr) // 2]
left = [x for x in arr if x < pivot]
middle = [x for x in arr if x == pivot]
right = [x for x in arr if x > pivot]
return quick_sort(left) + middle + quick_sort(right)



Выводы:
💭 Bubble Sort — простой, но очень медленный (O(n²)).
🖥 Insertion Sort — лучше пузырька, но тоже не для больших данных.
⚡️ Quick Sort — лидер по скорости

GitUnion || #Алгоритмизация #Python
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥31
🔥31