Обновить

Репозиторчик по алгоритмам на Kotlin'е

Алгоритмы *GitHub Kotlin *Изучение языков

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

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

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

Содержание моего репозиторчика следующее:

  • структуры данных - сюда я запихал графы, связанные списки, динамические массивы, min и max-кучи и еще что-то, все не помню

  • алгоритмы сортировки - наверно одна из самых излюбленных вещей, здесь вы найдете вашу любимую сортировку пузырьком, а также другие знакомые вам

  • алгоритмы поиска - здесь ничего нового, линейный и двоичный (также я добавил двоичный с рекурсией и реализовал методы для поиска правой или левой границы, почитайте комменты)

  • паттерны проектирования - ну без этого никак :)

Несколько дней назад я добавил мой проект на Reddit и англоязычные прогеры меня попросили перевести на их родной язык и поэтому в исходниках вы увидете два пакета ru и en.

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

Про тесты чуть не забыл! Я еще никогда не писал столько тестов. ))

Почти 100%-ая покрываемость, за исключением одного теста, который я не дописал для улучшенной сортировки пузырьком :))

Желаю всем хорошего кода и обязательно загляните в мой репозиторий, возможно у вас есть идея как его улучшить или добавить что-нибудь еще, я открыт к этому и прошу вас пишите конструктивные комментарии)

Ссылка на Github репозиторчик

Теги:
Хабы:
Всего голосов 8: ↑6 и ↓2 +4
Просмотры 1.5K
Комментарии Комментировать

Минуточку внимания