https://github.com/msskowron/godatastructures
Collection of data structures implemented in Golang.
https://github.com/msskowron/godatastructures
data-structures go
Last synced: about 1 year ago
JSON representation
Collection of data structures implemented in Golang.
- Host: GitHub
- URL: https://github.com/msskowron/godatastructures
- Owner: MSSkowron
- License: mit
- Created: 2023-07-20T16:34:50.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2023-08-01T22:41:14.000Z (over 2 years ago)
- Last Synced: 2025-01-09T11:55:58.268Z (about 1 year ago)
- Topics: data-structures, go
- Language: Go
- Homepage:
- Size: 55.7 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# GoDataStructures
This repository contains a comprehensive set of data structures implemented in the Go programming language. The majority of these data structures are designed to be generic, making them versatile and reusable in various scenarios.
## Data Structures
Below is a list of the data structures available in this repository along with a brief description of each:
- [**Stack**](./stack/): Last-in, first-out (LIFO) data structure, providing efficient push and pop operations. It's useful for managing elements in a sequential manner.
- [**Queue**](./queue/): First-in, first-out (FIFO) data structure, offering efficient enqueue and dequeue operations. It's ideal for scenarios where elements need to be processed in the order they arrive.
- [**Priority queue**](./priority_queue/): Priority-based data structure that ensures elements are dequeued based on their priority. It's beneficial for tasks requiring element processing based on priority levels.
- [**Heap**](./heap/): Heap data structure, allowing quick access to the minimum or maximum element. It's valuable for tasks that involve managing elements based on their relative ordering.
- [**Linked list**](./linked_list/): Linear data structure consisting of nodes linked together, enabling efficient insertions and deletions. It's useful for scenarios where elements are frequently added or removed.
- [**Hash table**](./hash_table/): Associative data structure that enables efficient key-value pair lookups. It's well-suited for tasks requiring fast access to data based on unique keys.
- [**Binary search tree**](./binary_search_tree/): Binary tree structure that maintains its elements in a sorted order, facilitating quick search and retrieval. It's advantageous for scenarios where fast data retrieval is crucial.
- [**Graph**](./graph/): Versatile data structure used to represent connections between elements, enabling various graph-related algorithms. It's essential for solving problems involving interconnected data.
- [**Trie**](./trie/): Efficient information retrieval data structure, particularly useful for dictionary-like operations. It's valuable for tasks involving efficient prefix-based searches.
- [**Set**](./set/): Collection of unique elements, supporting set operations like union, intersection, and difference. It's beneficial for managing unique data and performing set-based calculations.
## License
The project is available as open source under the terms of the MIT License.