Общий список структур данных, реализованных на 15 различных языках программирования. Java, JavaScript, Kotlin, C#, C ++, Objective-C, Swift, PHP, Python, Ruby, Script, Visual Basic, C, Scala and Go. Я буду реализовать 30 различных структур данных и множество алгоритмов с ними, а также предоставлять подробные объяснения о каждой структуре данных. Это работа в процессе и очень массовый проект, поэтому, пожалуйста, будьте терпеливы, так как у меня есть жизнь и работа на полный рабочий день, и я единственный, кто работает над этим в настоящее время. Этот проект предназначен для того, чтобы помочь новым разработчикам, выпускникам школ кода и разработчикам самоучки изучать и понять основные концепции структур данных, чтобы помочь построить основу базовых инженерных концепций и дизайна алгоритма на любом языке, с которым он чувствует наиболее комфортно. Цель этого проекта состоит в том, чтобы продемонстрировать начальные и передовые директора по информатике и инженерии простым и простым в использовании. Код написан очень простым, так что новый разработчик может легко следовать и легко понять расширенные темы.
Java, C#, Kotlin и Visual Basic были реализованы полностью, но не протестированы, C ++, JavaScript и PHP были запущены, но не завершены. С 450 структурами данных для записи на 15 различных языках, я хочу сначала убрать большую часть кода и исправить ошибки. К счастью, все это довольно просто тестировать, когда я это сделаю, и не должно занимать столько времени.
Ниже приведен список ссылок на каждую из завершенных структур данных на соответствующих языках. Просто найдите тот, который вы хотите, и нажмите на ссылку.
Круговой массив в PHP
Вдвойной связанный список в PHP
Связанный список в PHP
Бинарное дерево в PHP
Массивный стек в PHP
Связанный стек в PHP
Массивная очередь в PHP
Связанная очередь в PHP
Круговой массив в JavaScript
Arraylist в JavaScript
Вдвойной связанный список в JavaScript
Связанный список в JavaScript
Бинарное дерево в JavaScript
AVL Tree в JavaScript
Красное черное дерево в JavaScript
Массивный стек в JavaScript
Связанный стек в JavaScript
Аспиратная очередь в JavaScript
Связанная очередь в JavaScript
Круговой массив на Java
Arraylist в Java
Набор в Java
Ассоциативный массив на Java
Отсортированный массив в Java
Список вдвойне в Java
Связанный список в Java
Список пропуска на Java
Связанный набор в Java
Бинарное дерево на Java
B-дерево в Java
Самостоятельно балансирующее бинарное дерево на Яве
Splay Tree на Java
Красное черное дерево на Java
Avl Tree на Java
Массивный стек в Java
Круговой стек на Java
Связанный стек в Java
Очередная очередь на Java
Приоритетная очередь на Java
Циркулярная очередь на Java
Дек в Яве
Связанная очередь на Java
Связанная куча на Java
Нажатая куча в Java
Куча сортировки на Java
Хашст в Java
Хэштабель в Java
Недопроизвольный график на Java
Направленный график на Java
Круглый массив в C#
ArrayList в C#
Набор в C#
Ассоциативный массив в C#
Отсортированный массив в C#
Вдвойне связанный список в C#
Связанный список в C#
Список пропуска в C#
Связанный набор в C#
Бинарное дерево в C#
B-три в C#
Самостоятельно балансирующее бинарное дерево в C#
Splay Tree в C#
Красное черное дерево в C#
Avl дерево в C#
Массивный стек в C#
Круглый стек в C#
Связанный стек в C#
Очередная очередь в C#
Приоритетная очередь в C#
Циркулярная очередь в C#
Deque в c#
Связанная очередь в C#
Связанная куча в C#
Массивная куча в C#
Куча сортировки в C#
Хешст в C#
Хэштата в C#
Недопроизвольный график в C#
Направленный график в C#
Круглый массив в Visual Basic
ArrayList в Visual Basic
Набор в Visual Basic
Ассоциативный массив в Visual Basic
Отсортированный массив в Visual Basic
Вдвойне связанный список в Visual Basic
Связанный список в Visual Basic
Список пропуска в Visual Basic
Связанный набор в Visual Basic
Бинарное дерево в Visual Basic
B-три в Visual Basic
Самостоятельно балансирующее бинарное дерево в Visual Basic
Splay Tree в Visual Basic
Красное черное дерево в Visual Basic
Avl дерево в C#
Массивный стек в Visual Basic
Круговой стек в Visual Basic
Связанный стек в Visual Basic
Аспиратная очередь в Visual Basic
Приоритетная очередь в Visual Basic
Круглая очередь в Visual Basic
Deque в Visual Basic
Связанная очередь в Visual Basic
Связанная куча в Visual Basic
Массивная куча в Visual Basic
Куча сортировки в Visual Basic
Hashset в Visual Basic
Хэштата в Visual Basic
Недопроизводный график в Visual Basic
Направленный график в Visual Basic
Круговой массив в котлине
Arraylist в Котлине
Набор в котлине
Ассоциативный массив в Котлине
Отсортированный массив в Котлине
Вдвойной связанный список в котлине
Связанный список в котлине
Список пропуска в Котлине
Связанный набор в котлине
Бинарное дерево в котлине
B-дерево в Котлине
Самостоятельное бинарное дерево в Котлине
Splay Tree в котлине
Красное черное дерево в котлине
Avl Tree на Java
Массивный стек в котлине
Круговой стек в котлине
Связанный стек в котлине
Очереденная очередь в Котлин
Приоритетная очередь в котлине
Круговая очередь в котлине
Дек в Яве
Связанная очередь в котлине
Связанная куча в котлине
Массивная куча в котлине
Куча сортировки на Java
Хашст в котлине
Хэштабель в Котлине
Недопроизвольный график в котлине
Направленный график в котлине
Загрузите или клонируйте репо, загрузите свой выбор IDE, выберите свой язык и выберите свою структуру данных, и код должен быть готов к использованию. Пожалуйста, не то, чтобы этот код был протестирован, и для работы может потребоваться небольшие изменения.
В зависимости от языка, который вы хотите использовать, вам понадобится совместимый IDE, способный запустить тип кода, который вы используете. ПРИМЕЧАНИЕ. В примере:
To use the C# Binary Tree, clone the tree and place it into your Visual Studio Project
To Use the Java Linked List, clone the List and place it into you IntelliJ project
ect. ect.
Обратите внимание, что этот код был предназначен для того, чтобы помочь новым разработчикам понять концепции различных структур данных. Просмотреть раздел проектов для языка и структуры данных, которые вы хотите. Если рассматриваемая структура данных не была перемещена в закрытый столбец, то код не был проверен и может не работать или может потребоваться изменение для правильной работы.
Пожалуйста, прочитайте Anforming.md и Code_of_conduct.md для получения подробной информации о нашем кодексе поведения и процессе отправки нам запросов.
См. Также Список участников, которые участвовали в этом проекте.
Этот проект лицензирован по лицензии MIT - для получения подробной информации см.
Это отличный проект для студента колледжа, чтобы получить исход или для другого разработчика, который хочет получить исход со структурами данных и алгоритмами. Я готов помочь по мере необходимости.
Если вы хотите внести свой вклад, пожалуйста, свяжитесь со мной @ [email protected]. В противном случае я доберусь до этого, когда у меня будет время. Несколько языков были завершены, но не проверены. Смотрите ниже для деталей.