{"id":15049200,"url":"https://github.com/lvntky/ccontainer","last_synced_at":"2025-06-29T01:37:47.496Z","repository":{"id":251761542,"uuid":"838367002","full_name":"lvntky/ccontainer","owner":"lvntky","description":"Comprehensive STB style header-only library of data structures implemented in C","archived":false,"fork":false,"pushed_at":"2024-08-19T14:34:47.000Z","size":682,"stargazers_count":6,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-10T02:08:40.461Z","etag":null,"topics":["b-tree","binary-search-tree","bloom-filter","c99","collections","containers","data-structures","doubly-linked-list","dynamic-array","graph","hashmap","heap","linked-list","priority-queue","queue","red-black-tree","set","stack","trie"],"latest_commit_sha":null,"homepage":"https://lvntky.github.io/ccontainer/","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lvntky.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-08-05T13:49:44.000Z","updated_at":"2024-12-10T17:38:18.000Z","dependencies_parsed_at":"2024-08-09T16:24:57.048Z","dependency_job_id":"774f914c-0aa4-4060-99b2-dde991497ce2","html_url":"https://github.com/lvntky/ccontainer","commit_stats":null,"previous_names":["lvntky/ccontainer"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/lvntky/ccontainer","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lvntky%2Fccontainer","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lvntky%2Fccontainer/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lvntky%2Fccontainer/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lvntky%2Fccontainer/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lvntky","download_url":"https://codeload.github.com/lvntky/ccontainer/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lvntky%2Fccontainer/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262520746,"owners_count":23323762,"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":["b-tree","binary-search-tree","bloom-filter","c99","collections","containers","data-structures","doubly-linked-list","dynamic-array","graph","hashmap","heap","linked-list","priority-queue","queue","red-black-tree","set","stack","trie"],"created_at":"2024-09-24T21:19:03.542Z","updated_at":"2025-06-29T01:37:47.474Z","avatar_url":"https://github.com/lvntky.png","language":"C","readme":"# CContainer\n\n\u003cp align=\"center\"\u003e\n  \u003cimg style=\"width: 350px; height: 350px;\" src=\"https://raw.githubusercontent.com/lvntky/ccontainer/master/docs/cc_logo.png\" alt=\"Graphic design is my passion\"/\u003e\n\u003c/p\u003e\n\n[![Codacy Badge](https://app.codacy.com/project/badge/Grade/b38128bf0876489a91f2a8c420866aca)](https://app.codacy.com/gh/lvntky/ccontainer/dashboard?utm_source=gh\u0026utm_medium=referral\u0026utm_content=\u0026utm_campaign=Badge_grade)\n![Codecov](https://img.shields.io/codecov/c/gh/lvntky/ccontainer)\n![GitHub branch check runs](https://img.shields.io/github/check-runs/lvntky/ccontainer/master)\n\nCContainer is a comprehensive STB style header-only library of data structures implemented in C. This library provides a variety of container types that are essential for managing collections of data in C programs. Each container is designed to be efficient, easy to use, and flexible, making CContainer a valuable tool for C developers.\n\n## Features\n\n- Dynamic Array (Vector)\n    - Dynamic resizing\n    - Random access\n    - Efficient indexing\n    - Functions: Initialization, Insertion, Deletion, Access, Resizing, Cleanup-\n- Linked List\n    - Dynamic size\n    - Efficient insertions/deletions at both ends\n    - Sequential access\n    - Functions: Initialization, Insertion, Deletion, Access, Cleanup-\n- Doubly Linked List\n    - Dynamic size\n    - Efficient insertions/deletions at both ends\n    - Bidirectional sequential access\n    - Functions: Initialization, Insertion, Deletion, Access, Cleanup-\n- Stack\n    - LIFO (Last In, First Out) access\n    - Functions: Initialization, Push, Pop, Peek, Cleanup-\n- Queue\n    - FIFO (First In, First Out) access\n    - Functions: Initialization, Enqueue, Dequeue, Peek, Cleanup-\n- Hash Map\n    - Key-value pair storage\n    - Efficient lookups, insertions, and deletions\n    - Functions: Initialization, Insert, Remove, Get, Cleanup-\n- Set\n    - Unique element storage\n    - Efficient membership testing, insertion, and deletion\n    - Functions: Initialization, Insert, Remove, Contains, Cleanup-\n- Binary Search Tree (BST)\n    - Ordered elements\n    - Efficient insertions, deletions, and lookups\n    - Functions: Initialization, Insertion, Deletion, Search, Traversal, Cleanup-\n- Red-Black Tree\n    - Self-balancing BST\n    - Ensures balanced height for efficient operations\n    - Functions: Initialization, Insertion, Deletion, Search, Traversal, Cleanup-\n- Heap (Priority Queue)\n    - Efficient retrieval of the maximum or minimum element\n    - Supports both max-heap and min-heap configurations\n    - Functions: Initialization, Insertion, Deletion, Peek, Cleanup-\n- Graph\n    - Nodes and edges\n    - Supports directed and undirected graphs\n    - Functions: Initialization, Add node, Add edge, Remove node, Remove edge, Traversal, Cleanup-\n- Trie (Prefix Tree)\n    - Efficient prefix-based search\n    - Useful for implementing dictionaries and autocomplete\n    - Functions: Initialization, Insertion, Deletion, Search, Cleanup-\n- Bloom Filter\n    - Probabilistic data structure for set membership testing\n    - Space-efficient\n    - Functions: Initialization, Add, Query, Cleanup-\n- B-Tree\n    - Balanced tree for efficient disk storage operations\n    - Used in databases and filesystems\n    - Functions: Initialization, Insertion, Deletion, Search, Traversal, Cleanup-\n\n## Building and installing\n\nSee the [BUILDING](BUILDING.md) document.\n\n## Contributing\n\nSee the [CONTRIBUTING](CONTRIBUTING.md) document.\n\n## Development Status\n\nYou can check and inform development and implementation status of containers from [DEVELOPMENT](DEVELOPMENT.md) document.\n\n## Dependencies\n\nBy philosophy like many others of my libraries ccontainer does not depend any other third party libraries.\nSo you can directly clone/install ccontainer and start to use it.\n\nBut if you want to run the unit tests from the /test directory, we are using [Unity](https://github.com/ThrowTheSwitch/Unity)\nas our unit testing library. And initially we are using [conan](https://conan.io/) to download and use our dependencies\nbut you can use anything (installing Unity directly) you want.\n\n## Unit Test Coverage Graph Per File\n![graph](https://codecov.io/gh/lvntky/ccontainer/graphs/tree.svg?token=0aUe4T51Su)\n\n## Licensing\nThis software is available under 2 [licenses](LICENSE) -- choose whichever you prefer.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flvntky%2Fccontainer","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flvntky%2Fccontainer","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flvntky%2Fccontainer/lists"}