{"id":24532935,"url":"https://github.com/mcecode/data-structures-and-algorithms","last_synced_at":"2025-03-15T21:20:55.045Z","repository":{"id":135706802,"uuid":"444358796","full_name":"mcecode/data-structures-and-algorithms","owner":"mcecode","description":"Different data structures and algorithms. Different languages. 0% libraries. 100% fun.","archived":false,"fork":false,"pushed_at":"2024-08-02T10:44:53.000Z","size":171,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-22T10:18:56.635Z","etag":null,"topics":["algorithms","computer-science","data-structures","data-structures-and-algorithms","leetcode"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/mcecode.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":"2022-01-04T09:26:29.000Z","updated_at":"2024-08-02T10:44:57.000Z","dependencies_parsed_at":null,"dependency_job_id":"c2254143-9233-4296-9c43-fd50e820e6bd","html_url":"https://github.com/mcecode/data-structures-and-algorithms","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcecode%2Fdata-structures-and-algorithms","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcecode%2Fdata-structures-and-algorithms/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcecode%2Fdata-structures-and-algorithms/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/mcecode%2Fdata-structures-and-algorithms/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/mcecode","download_url":"https://codeload.github.com/mcecode/data-structures-and-algorithms/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243791063,"owners_count":20348408,"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":["algorithms","computer-science","data-structures","data-structures-and-algorithms","leetcode"],"created_at":"2025-01-22T10:18:59.837Z","updated_at":"2025-03-15T21:20:55.024Z","avatar_url":"https://github.com/mcecode.png","language":"PHP","readme":"# Data Structures and Algorithms\n\nI like learning about programming languages, from their syntax to the concepts and paradigms they use. It helps give me a different perspective on the hows and whys of things, plus I just find them interesting overall. At the same time, I could be better at data structures and algorithms. So, when I have time and I feel like it, I'll be exploring languages and trying to improve on data structures and algorithms here. Thus, in the spirit of language exploration, I intend to only use the vanilla, base form of whatever language I will explore, meaning, no external and non-default libraries, even for testing.\n\n## Disclaimer\n\n**Do not use the code in this repository for anything other than educational purposes.**\n\nI'll try to be as thorough as I can in testing, but since I'm primarily doing this for fun, there will probably be bugs and edge cases that I'll miss. Additionally, I intend to reinvent a lot of wheels for educational purposes. As such, if you are tempted to use anything here for a project, don't, just don't. Find and use a battle-tested library instead.\n\nThat said, if your goal is to play around and learn along with me, then feel free to clone or fork this repository and use it however you like.\n\n## Directory structure\n\nEach subdirectory maps to a programming language and contains a readme file that details instructions and requirements for running the code.\n\n## Data structures\n\n- Singly linked list ([Wikipedia](https://en.wikipedia.org/wiki/Linked_list#Singly_linked_list))\n  - [PHP](php/LinkedLists/SinglyLinkedList.php)\n  - [Go](go/linked_list/singly.go)\n- Circular doubly linked list ([Wikipedia](https://en.wikipedia.org/wiki/Linked_list#Doubly_linked_list), [Wikipedia](https://en.wikipedia.org/wiki/Linked_list#Circular_linked_list))\n  - [PHP](php/LinkedLists/CircularDoublyLinkedList.php)\n  - [Go](go/linked_list/circular_doubly.go)\n- Queue ([Wikipedia](\u003chttps://en.wikipedia.org/wiki/Queue_(abstract_data_type)\u003e))\n  - [Go](go/queue/queue.go)\n- Stack ([Wikipedia](\u003chttps://en.wikipedia.org/wiki/Stack_(abstract_data_type)\u003e))\n  - [Go](go/stack/stack.go)\n\n## Algorithms\n\n- Ceasar cipher ([Wikipedia](https://en.wikipedia.org/wiki/Caesar_cipher))\n  - [PHP](php/Ciphers/CeasarCipher.php)\n- Palindrome checker ([Wikipedia](https://en.wikipedia.org/wiki/Palindrome))\n  - [Go](go/strings/palindrome/palindrome.go)\n- Hamming distance ([Wikipedia](https://en.wikipedia.org/wiki/Hamming_distance))\n  - [Go](go/strings/hamming_distance/hamming_distance.go)\n\n## LeetCode problems\n\n- Two sum ([LeetCode](https://leetcode.com/problems/two-sum))\n  - [TypeScript](typescript/leetcode/1-two-sum.ts)\n- Add two numbers ([LeetCode](https://leetcode.com/problems/add-two-numbers))\n  - [TypeScript](typescript/leetcode/2-add-two-numbers.ts)\n- Longest substring without repeating characters ([LeetCode](https://leetcode.com/problems/longest-substring-without-repeating-characters))\n  - [TypeScript](typescript/leetcode/3-longest-substring-without-repeating-characters.ts)\n- Median of two sorted arrays ([LeetCode](https://leetcode.com/problems/median-of-two-sorted-arrays))\n  - [TypeScript](typescript/leetcode/4-median-of-two-sorted-arrays.ts)\n\n## Contributing\n\nSince one of the main goals of this project is for me to learn data structures and algorithms, I won't accept pull requests that implement them because I want to do that myself. However, I would greatly appreciate suggestions on languages, data structures, and algorithms to explore as well as fixes or improvements to the things that I have already implemented.\n\n## Inspiration\n\n- [JavaScript Algorithms and Data Structures](https://github.com/trekhleb/javascript-algorithms)\n- [The Algorithms](https://github.com/TheAlgorithms)\n\n## License\n\nCopyright 2022-present Matthew Espino\n\nThis project is licensed under the [Apache 2.0 license](LICENSE).\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmcecode%2Fdata-structures-and-algorithms","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmcecode%2Fdata-structures-and-algorithms","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmcecode%2Fdata-structures-and-algorithms/lists"}