{"id":21112952,"url":"https://github.com/tobuya/data-structures","last_synced_at":"2025-12-28T19:17:43.509Z","repository":{"id":212349164,"uuid":"731286656","full_name":"tobuya/data-structures","owner":"tobuya","description":"This repository is dedicated to creating fundamental visual representations of various non-primitive data structures using Python. Each data structure will be visually depicted, accompanied by a link to a corresponding Medium article. These articles will provide an in-depth exploration of the major operations of each structure.","archived":false,"fork":false,"pushed_at":"2023-12-18T19:14:30.000Z","size":8,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-21T04:27:18.211Z","etag":null,"topics":["articles","data-structures","matplotlib","numpy-library","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tobuya.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-12-13T18:36:40.000Z","updated_at":"2023-12-13T19:43:17.000Z","dependencies_parsed_at":"2023-12-18T22:38:11.937Z","dependency_job_id":"087314ce-e0b0-4ec5-9a4c-f55630fe5abc","html_url":"https://github.com/tobuya/data-structures","commit_stats":null,"previous_names":["tobuya/data-structures"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tobuya%2Fdata-structures","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tobuya%2Fdata-structures/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tobuya%2Fdata-structures/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tobuya%2Fdata-structures/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tobuya","download_url":"https://codeload.github.com/tobuya/data-structures/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243558484,"owners_count":20310574,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["articles","data-structures","matplotlib","numpy-library","python"],"created_at":"2024-11-20T01:35:50.625Z","updated_at":"2025-12-28T19:17:43.433Z","avatar_url":"https://github.com/tobuya.png","language":"Python","readme":"\u003ca name=\"readme-top\"\u003e\u003c/a\u003e\n[![Contributors](https://img.shields.io/github/contributors/tobuya/data-structures)](https://github.com/tobuya/data-structures/graphs/contributors)\n[![LastUpdate](https://img.shields.io/github/last-commit/tobuya/data-structures)](https://github.com/tobuya/data-structures/commits/main)\n[![Stargazers](https://img.shields.io/github/stars/tobuya/data-structures)](https://github.com/tobuya/data-structures/stargazers)\n[![Issues](https://img.shields.io/github/issues/tobuya/data-structures)](https://github.com/tobuya/data-structures/issues)\n[![License](https://img.shields.io/github/license/tobuya/data-structures)](https://github.com/tobuya/data-structures/blob/main/LICENSE)\n\n\u003cdetails\u003e\n\u003csummary\u003eTable of Contents\u003c/summary\u003e\n\n- [Data Structures](#data-structures)\n  - [📘 Getting Started  ](#-getting-started--)\n    - [📋 Prerequisites](#-prerequisites)\n    - [📂 Setup](#-setup)\n    - [📥 Installation](#-installation)\n    - [💻 Generate Visualizations](#-generate-visualizations)\n  - [👨‍🚀 Authors  ](#-authors--)\n  - [🎯 Future Features  ](#-future-features--)\n  - [🤝 Contribution  ](#-contribution--)\n  - [💖 Show Your Support  ](#-show-your-support--)\n  - [🙏 Acknowledgements](#-acknowledgements)\n  - [📜 License ](#-license-)\n\u003c/details\u003e\n\n# Data Structures\n\nThis repository is dedicated to creating fundamental visual representations of various non-primitive data structures using Python. Each data structure will be visually depicted, accompanied by a link to a corresponding Medium article. These articles will provide an in-depth exploration of the major operations of each structure, supplemented with code snippets in Python and JavaScript.\n\nA data structure is a data organization, management, and storage format that enables efficient access and modification. There are two types of data structures:\n\n- *Primitive data structures* - data structures that hold a single value (int, char, float, double, and pointer)\n- *Non-primitive data structures* - data structures that can hold several values. It is divided into two:\n  \n    *1. Linear* - data is arranged in sequential manner, i.e, one element is connected to only one element in linear form (Arrays, Linked list, Stacks, and Queues).\n\n    *2. Non-linear* - data is arranged in a random manner, i.e, one element is connected to 'n' number of elements (Trees and Graphs).\n\n\nThe major operations that we will perform on each data structure include:\n\n- *Searching: We will search for any element in the data structure.*\n  \n- *Sorting: We will sort the elements of a data structure either in an ascending or descending order.*\n  \n- *Insertion: We will insert the new element in the data structure*\n  \n- *Updation: We will update the element, i.e., replace the element with another element.*\n\n- *Deletion: We will perform the delete operation to remove the element from the data structure.*\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n\n## 📘 Getting Started  \u003ca name=\"getting-started\"\u003e\u003c/a\u003e\n\nTo run this project locally, you'll need to follow these steps.\n\n### 📋 Prerequisites\n\nMake sure you have the following installed on your machine:\n- [Python](https://www.python.org/)\n\n### 📂 Setup\n\nClone this repository to your desired folder.\n\n```sh\ncd my-desired-folder\ngit clone git@github.com:tobuya/data-structures.git\ncd data-structures\n```\n\nCreate a virtual environment using *venv* module available in Python 3.x (Recommended)\n\n- Create a virtual environment\n  \n  ```sh\n  python -m venv desired-name\n  ```\n- Activate the virtual environment\n  \n  *On Windows*\n  ```sh\n  desired-name\\Scripts\\activate\n  ```\n\n  *On Linux and macOS*\n  ```sh\n  source desired-name/bin/activate\n  ```\n\n### 📥 Installation\n\nInstall the required dependencies with:\n\n```sh\npip install -r requirements.txt\n```\n\n### 💻 Generate Visualizations\n\nTo generate the visualizations, execute the following command:\n\n```sh\npython \u003cdata-structure-name\u003e.py\n```\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## 👨‍🚀 Authors  \u003ca name=\"author\"\u003e\u003c/a\u003e\n\n👤 **Thomas Obuya**\n\n- [GitHub](https://github.com/tobuya)\n- [Medium](https://medium.com/@tobuya)\n- [LinkedIn](https://linkedin.com/in/tobuya)\n\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## 🎯 Future Features  \u003ca name=\"future-features\"\u003e\u003c/a\u003e\n\n- [ ] Add Data Structures section containing visualization and a Medium article link.\n- [ ] Add other data structures visualization Python code\n- [ ] Update the README documentation\n- [ ] Add an assets folder containing all the data structures visualization\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## 🤝 Contribution  \u003ca name=\"contribution\"\u003e\u003c/a\u003e\n\nContributions, issues, and feature requests are welcome!\n\nFeel free to check the [issues page](https://github.com/tobuya/data-structures/issues).\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## 💖 Show Your Support  \u003ca name=\"support\"\u003e\u003c/a\u003e\n\nIf you like this project, please consider giving it a ⭐.\n\nYou can also follow me on [X/Twitter](https://twitter.com/thomasobuya95). Let's connect, share ideas, and grow together in our journey through the world of software development.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## 🙏 Acknowledgements\n\nI extend my sincere gratitude to everyone contributing their valuable insights and expertise to enhance this project. Your thoughts and contributions are immensely appreciated and vital to further improving this project, so bring them on.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e\n\n## 📜 License \u003ca name=\"license\"\u003e\u003c/a\u003e\n\nThis project is [MIT](./LICENSE) licensed.\n\n\u003cp align=\"right\"\u003e(\u003ca href=\"#readme-top\"\u003eback to top\u003c/a\u003e)\u003c/p\u003e","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftobuya%2Fdata-structures","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftobuya%2Fdata-structures","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftobuya%2Fdata-structures/lists"}