Алгоритмы, написанные на Python. Этот репозиторий содержит общие алгоритмы, изученные в классах CS, от сортировки до поиска и многого другого.
Поскольку проект все еще достаточно мал, просто клонируйте репозиторий и напишите любой код в файле Python в корневом каталоге репо. Например, если вы хотите использовать алгоритм сортировки Merge из папки сортировки, вы можете создать файл Python в корневом каталоге репозитория:
merge_sort_example.py
from sorting.merge_sort import MergeSort
unsorted_list = [5, 3, 4, 1, 2]
sorted_list = MergeSort.sort(unsorted_list)
print("Unsorted: " + str(unsorted_list))
print("Sorted: " + str(sorted_list))
Если вы хотите внести свой вклад, не стесняйтесь расколоть копию и начать. Тем не менее, есть несколько дел, прежде чем внести свой вклад:
В этом проекте используются много модулей Pytest и Git Pre-Commit Hook, чтобы гарантировать, что ошибки поймают до того, как будут сделаны какие-либо коммиты. Вам нужно будет установить Pytest на вашем компьютере.
Этот проект следует руководящим принципам в стиле кода в Pycodestyle. Вам нужно будет установлен Pycodestyle на вашей машине.
Исполняемый файл под названием Validate поставляется в корневом каталоге этого репо. Чтобы убедиться, что любые изменения кода проходят Pytest и Pycodestyle, вы можете просто запустить этот исполняемый файл, чтобы проверить весь код для вас.
Как упоминалось ранее, для проверки всех кодов используется крюк перед коммитацией, пропускает Pytest и Pycodestyle до принятия каких-либо коммитов. По сути, этот крюк запустит проверку для вас и отклонит коммит, если проверка возвращается с любыми сообщениями об ошибках.
Чтобы настроить этот git Hook, просто запустите исполняемый файл Setup в корневом каталоге этого репо, и он создаст файл для автоматической проверки кода против Pytest и Pycodestyle до того, как будут сделаны какие -либо коммиты.