{"id":25763664,"url":"https://github.com/nisabmohd/data-structures-java","last_synced_at":"2025-10-18T23:26:19.771Z","repository":{"id":37840135,"uuid":"504652124","full_name":"nisabmohd/Data-Structures-Java","owner":"nisabmohd","description":"I've implemented a comprehensive set of generic data structures in Java, including arrays, linked lists, stacks, queues, trees, and more, ensuring versatility and efficiency in data handling.","archived":false,"fork":false,"pushed_at":"2023-04-09T16:10:26.000Z","size":430,"stargazers_count":15,"open_issues_count":0,"forks_count":5,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-19T13:56:01.706Z","etag":null,"topics":["coding","collections-framework","community-learning","data-structures","graph","hashmap","heaps","interview-preparation","interview-questions","java","linked-list","list","maps","open-source","problem-solving","queue","sets","studynotes","trees","trie"],"latest_commit_sha":null,"homepage":"","language":"Java","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/nisabmohd.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-06-17T19:36:38.000Z","updated_at":"2024-04-19T06:57:38.000Z","dependencies_parsed_at":"2023-02-18T23:01:47.113Z","dependency_job_id":null,"html_url":"https://github.com/nisabmohd/Data-Structures-Java","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/nisabmohd%2FData-Structures-Java","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nisabmohd%2FData-Structures-Java/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nisabmohd%2FData-Structures-Java/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nisabmohd%2FData-Structures-Java/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nisabmohd","download_url":"https://codeload.github.com/nisabmohd/Data-Structures-Java/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240926393,"owners_count":19879737,"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":["coding","collections-framework","community-learning","data-structures","graph","hashmap","heaps","interview-preparation","interview-questions","java","linked-list","list","maps","open-source","problem-solving","queue","sets","studynotes","trees","trie"],"created_at":"2025-02-26T20:18:05.148Z","updated_at":"2025-10-18T23:26:19.676Z","avatar_url":"https://github.com/nisabmohd.png","language":"Java","readme":"# Data Structure Implementations in Java\n We know how data structure plays an important role in interview preparation as well for problem solving.\n\nUsually we use internal data structures and we don’t know how things are working behind. Using a data structure without knowing its working its useless. This data structure implementation are asked in interview and if you know how to implement a data structure you can design your own custom data structure according to your needs.\n\nSo you understood that data structure implementation will not only help you in interview but also can be used in development for creating custom structures. So from where we need to learn this?\n\nI have made this GitHub repository containing all the internal collection framework of Java plus Data structures needed in daily life. Below is the list of Data structures in my GitHub repo \n\n\u003cimg src=\"image.png\" /\u003e\n\n\n\u003ctable align=\"center\"\u003e  \u003cthead\u003e \u003ctr\u003e  \u003cth\u003eS.NO\u003c/th\u003e  \u003cth\u003eData Structure     \u003c/th\u003e\u003cth\u003e      \u003c/th\u003e\u003cth\u003ePrerequisite     \u003c/th\u003e  \u003c/tr\u003e  \u003c/thead\u003e  \u003ctbody\u003e\n\n\u003ctr\u003e  \u003ctd\u003e1\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/tree/master/src/Lists\"\u003eLists\u003c/a\u003e\u003c/td\u003e \u003ctd\u003e\u003ctable\u003e  \u003cthead\u003e  \u003ctr\u003e  \u003cth\u003eS.NO\u003c/th\u003e  \u003cth\u003eData Structure     \u003c/th\u003e  \u003c/tr\u003e  \u003c/thead\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd\u003e1.1\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Lists/ArrayListCustom.java\"\u003eArrayList\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e\u003ctr\u003e  \u003ctd\u003e1.2\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Lists/SingleLinkedList.java\"\u003eSingleLinkedList\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e\u003ctr\u003e  \u003ctd\u003e1.3\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Lists/DoubleLinkedList.java\"\u003eDoubleLinkedList\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e  \u003ctr\u003e  \u003ctd\u003e1.4\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Lists/CircularLinkedLIst.java\"\u003eCircularLinkedList\u003c/a\u003e\u003c/td\u003e   \u003c/tr\u003e  \u003ctr\u003e  \u003ctd\u003e1.5\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Lists/StackCustom.java\"\u003eStack\u003c/a\u003e\u003c/td\u003e    \u003c/tr\u003e  \u003c/tbody\u003e  \u003c/table\u003e   \u003c/td\u003e\u003ctd\u003eArrays, Object oriented concepts\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e \n\n\u003ctd\u003e2\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/tree/master/src/Queues\"\u003eQueues\u003c/a\u003e\u003ctd\u003e\n\u003ctable\u003e  \u003cthead\u003e  \u003ctr\u003e  \u003cth\u003eS.NO\u003c/th\u003e  \u003cth\u003eData Structure     \u003c/th\u003e  \u003c/tr\u003e  \u003c/thead\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd\u003e2.1\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Queues/QueueCustom.java\"\u003eQueue\u003c/a\u003e\u003c/td\u003e \u003ctr\u003e  \u003ctd\u003e2.2\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Queues/DequeCustom.java\"\u003eDeque\u003c/a\u003e\u003c/td\u003e   \u003c/tr\u003e  \u003ctr\u003e  \u003ctd\u003e2.3\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Queues/CircularQueue.java\"\u003eCircular Queue\u003c/a\u003e\u003c/td\u003e    \u003c/tr\u003e  \u003c/tbody\u003e  \u003c/table\u003e   \u003c/td\u003e\u003ctd\u003eArrays\u003c/td\u003e\n\u003c/tr\u003e\n\n\u003ctr\u003e  \u003ctd\u003e3\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/tree/master/src/Trees\"\u003eTrees\u003c/a\u003e\u003ctd\u003e\n\u003ctable\u003e  \u003cthead\u003e  \u003ctr\u003e  \u003cth\u003eS.NO\u003c/th\u003e  \u003cth\u003eData Structure     \u003c/th\u003e  \u003c/tr\u003e  \u003c/thead\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd\u003e3.1\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Trees/BinaryTree.java\"\u003eBinaryTree\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e\u003ctr\u003e  \u003ctd\u003e3.2\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/Data-Structures/blob/master/src/Trees/BinarySearchTree.java\"\u003eBinarySearchTree\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e\u003ctr\u003e  \u003ctd\u003e3.3\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Trees/N_ary.java\"\u003eN_Arry Tree\u003c/a\u003e\u003c/td\u003e \n\u003c/tr\u003e \n \u003ctd\u003e3.4\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/Data-Structures/blob/master/src/Trees/AVL.java\"\u003eAVL Tree\u003c/a\u003e\u003c/td\u003e \n\u003c/tr\u003e\n\u003ctr\u003e\n \u003ctd\u003e3.5\u003c/td\u003e \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/Data-Structures-Java/blob/master/src/Trees/CompleteBinaryTree.java\"\u003eComplete Binary Tree\u003c/a\u003e\u003c/td\u003e\n\u003c/tr\u003e\n \u003c/tbody\u003e  \u003c/table\u003e   \u003c/td\u003e\u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/Data-Structures/blob/master/src/Trees/BTree.java\"\u003eBTree\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e\n\n\u003ctr\u003e  \u003ctd\u003e4\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/tree/master/src/Maps\"\u003eMaps\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e\n\u003ctable\u003e  \u003cthead\u003e  \u003ctr\u003e  \u003cth\u003eS.NO\u003c/th\u003e  \u003cth\u003eData Structure     \u003c/th\u003e  \u003c/tr\u003e  \u003c/thead\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd\u003e4.1\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Maps/HashMapCustom.java\"\u003eHashMap\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e\u003ctr\u003e  \u003ctd\u003e4.2\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Maps/LinkedHashMapCustom.java\"\u003eLinkedHashMap\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e\u003ctr\u003e  \u003ctd\u003e4.3\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Maps/TreeMapCustom.java\"\u003eTreeMap\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e   \u003c/tbody\u003e  \u003c/table\u003e   \u003c/td\u003e\u003ctd\u003e Hash Collision , Hashing\u003c/td\u003e   \u003c/tr\u003e \n\n\u003ctr\u003e  \u003ctd\u003e5\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/tree/master/src/Sets\"\u003eSets\u003c/a\u003e\u003c/td\u003e\u003ctd\u003e\n\u003ctable\u003e  \u003cthead\u003e  \u003ctr\u003e  \u003cth\u003eS.NO\u003c/th\u003e  \u003cth\u003eData Structure     \u003c/th\u003e  \u003c/tr\u003e  \u003c/thead\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd\u003e5.1\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Sets/HashSetCustom.java\"\u003eHashSet\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e\u003ctr\u003e  \u003ctd\u003e5.2\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Sets/LinkedHashSetCustom.java\"\u003eLinkedHashSet\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e\u003ctr\u003e  \u003ctd\u003e5.3\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Sets/TreeSetCustom.java\"\u003eTreeSet\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e   \u003c/tbody\u003e  \u003c/table\u003e   \u003c/td\u003e\u003ctd\u003e Maps\u003c/td\u003e   \u003c/tr\u003e\n\n\u003ctr\u003e  \u003ctd\u003e6\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/tree/master/src/Heaps\"\u003eHeap / Priority-Queue\u003c/a\u003e\u003ctd\u003e\n\u003ctable\u003e  \u003cthead\u003e  \u003ctr\u003e  \u003cth\u003eS.NO\u003c/th\u003e  \u003cth\u003eData Structure     \u003c/th\u003e  \u003c/tr\u003e  \u003c/thead\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd\u003e6.1\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/Data-Structures/blob/master/src/Heaps/Heap.java\"\u003eHeap\u003c/a\u003e\u003c/td\u003e      \u003c/tr\u003e \n\u003ctr\u003e  \u003ctd\u003e6.2\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Heaps/HeapUsingHeapify.java\"\u003eHeap Heapify\u003c/a\u003e\u003c/td\u003e      \u003c/tr\u003e\n\u003c/tbody\u003e  \u003c/table\u003e   \u003c/td\u003e\u003ctd\u003e\nTrees\u003c/td\u003e    \u003c/tr\u003e\n\n\u003ctr\u003e  \u003ctd\u003e7\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/tree/master/src/Trie\"\u003eTrie / Prefix-Tree\u003c/a\u003e\u003ctd\u003e\n\u003ctable\u003e  \u003cthead\u003e  \u003ctr\u003e  \u003cth\u003eS.NO\u003c/th\u003e  \u003cth\u003eData Structure     \u003c/th\u003e  \u003c/tr\u003e  \u003c/thead\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd\u003e7.1\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Trie/Trie.java\"\u003eTrie\u003c/a\u003e\u003c/td\u003e      \u003c/tr\u003e  \u003c/tbody\u003e  \u003c/table\u003e   \u003c/td\u003e\u003ctd\u003e\nTrees\u003c/td\u003e    \u003c/tr\u003e\n\n\u003ctr\u003e  \u003ctd\u003e8\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/tree/master/src/Graphs\"\u003eGraphs\u003c/a\u003e\u003ctd\u003e\n\u003ctable\u003e  \u003cthead\u003e  \u003ctr\u003e  \u003cth\u003eS.NO\u003c/th\u003e  \u003cth\u003eData Structure     \u003c/th\u003e  \u003c/tr\u003e  \u003c/thead\u003e  \u003ctbody\u003e  \u003ctr\u003e  \u003ctd\u003e8.1\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/DS-Implementations/blob/master/src/Graphs/Graph.java\"\u003eGraph\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e\u003ctr\u003e  \u003ctd\u003e8.2\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/Data-Structures/blob/master/src/Graphs/GraphGeneric.java\"\u003eGenericGraph\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e\u003ctr\u003e  \u003ctd\u003e8.3\u003c/td\u003e  \u003ctd\u003e\u003ca href=\"https://github.com/nisabmohd/Data-Structures/blob/master/src/Graphs/GraphGenericExample.java\"\u003eGenericGraphExample\u003c/a\u003e\u003c/td\u003e \u003c/tr\u003e  \u003c/tbody\u003e  \u003c/table\u003e   \u003c/td\u003e\u003ctd\u003e\nTrees traversals \u003c/td\u003e  \u003c/tr\u003e\n\u003c/tbody\u003e  \u003c/table\u003e\n\n\n\n\n\n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnisabmohd%2Fdata-structures-java","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnisabmohd%2Fdata-structures-java","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnisabmohd%2Fdata-structures-java/lists"}