New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

github.com/mstgnz/data-structures

Package Overview
Dependencies
Alerts
File Explorer
Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

github.com/mstgnz/data-structures

  • v1.2.0
  • Source
  • Go
  • Socket score

Version published
Created
Source

Data Structures and Algorithms in Go

This repository contains implementations of various data structures and algorithms in Go programming language. It serves as both a learning resource and a practical reference for developers.

📚 Data Structures

Basic Data Structures

  • Linked List - Documentation
    • Singly Linked List
    • Doubly Linked List
    • Circular Linked List
    • Iterator Pattern Implementation
    • Thread-safe Operations
    • Generic Type Support
  • Stack - Documentation
    • Array-based Implementation
    • Linked List-based Implementation
    • Thread-safe Operations
    • Generic Type Support
  • Queue - Documentation
    • Array Queue Implementation
    • Linked List Queue Implementation
    • Priority Queue
    • Circular Queue
    • Thread-safe Operations
    • Generic Type Support
  • Tree - Documentation
    • Binary Tree
    • Binary Search Tree (BST)
    • AVL Tree (Self-balancing)
    • Red-Black Tree
    • B-Tree
    • Trie (Prefix Tree)
    • N-ary Tree
    • Expression Tree
    • Thread-safe Operations
  • Heap - Documentation
    • Binary Heap
    • Min Heap
    • Max Heap
    • Fibonacci Heap
    • Binomial Heap
    • Priority Queue Implementation
    • Thread-safe Operations
  • Hash - Documentation
    • Hash Table
    • Hash Map
    • Hash Set
    • Consistent Hashing
    • Linear Probing
    • Quadratic Probing
    • Double Hashing
    • Separate Chaining
    • Thread-safe Operations
  • OrderedMap - Documentation
    • Thread-safe Implementation
    • Order Preservation
    • Concurrent Operations Support
    • Skip List Implementation
    • Advanced Features (Copy, Clear, Range iteration)
    • Generic Type Support

Advanced Data Structures

  • Graph - Documentation
    • Adjacency Matrix
    • Adjacency List
    • Weighted Graph
    • Directed Graph
    • Undirected Graph
    • Graph Algorithms
      • Depth First Search (DFS)
      • Breadth First Search (BFS)
      • Dijkstra's Algorithm
      • Bellman-Ford Algorithm
      • Floyd-Warshall Algorithm
      • Kruskal's Algorithm
      • Prim's Algorithm
      • Topological Sort
      • Strongly Connected Components
      • Cycle Detection

🔧 Algorithms - Documentation

Sorting Algorithms

  • Bubble Sort
  • Selection Sort
  • Insertion Sort
  • Quick Sort
  • Merge Sort
  • Heap Sort

Searching Algorithms

  • Linear Search
  • Binary Search (Iterative and Recursive)
  • Jump Search
  • Interpolation Search
  • Exponential Search
  • Fibonacci Search

🚀 Getting Started

Prerequisites

  • Go 1.23 or higher

Installation

git clone https://github.com/mstgnz/data-structures.git
cd data-structures
go mod download

Running Tests

go test ./...

🤝 Contributing

Contributions are welcome! Please read our Contributing Guidelines for details on how to submit pull requests.

📝 License

This project is licensed under the MIT License - see the LICENSE file for details.

🔍 Project Structure

.
├── algorithms/    # Basic algorithm implementations
├── advanced/      # Advanced data structures
├── examples/      # Usage examples
├── graph/         # Graph implementations
├── hash/         # Hash table implementations
├── heap/         # Heap implementations
├── linkedlist/   # Linked list implementations
├── orderedmap/   # Ordered map implementations
├── queue/        # Queue implementations
├── stack/        # Stack implementations
├── tree/         # Tree implementations
└── utils/        # Utility functions

✨ Features

  • Clean and efficient implementations
  • Comprehensive test coverage
  • Well-documented code
  • Generic implementations where applicable
  • Performance optimized
  • Thread-safe implementations where necessary
  • Order preservation in map operations
  • Concurrent access support with proper synchronization
  • Advanced data structure features (Copy, Clear, Range operations)

📊 Performance

Each implementation includes performance considerations and Big O notation analysis in its respective documentation.

🔄 Version History

See CHANGELOG.md for release history and version details.

FAQs

Package last updated on 02 Jan 2025

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc