awesome-repositories.com
Blog
awesome-repositories.com

Descubre los mejores repositorios open-source con nuestra búsqueda potenciada por IA.

ExplorarBúsquedas curadasAlternativas open-sourceSoftware autohospedableBlogMapa del sitio
ProyectoAcerca deCómo clasificamosPrensaServidor MCP
Aviso legalPrivacidadTérminos
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
greyireland avatar

greyireland/algorithm-pattern

0
View on GitHub↗
15,465 estrellas·2,582 forks·Go·MIT·7 vistasgreyireland.gitbook.io/algorithm-pattern↗

Algorithm Pattern

This project is an algorithm template library and coding interview study guide providing reusable code patterns for common data structures and algorithms. It serves as a reference for optimized strategies and a structured learning path to build proficiency in algorithmic problem solving and competitive programming.

The library focuses on standardized implementations of key algorithmic patterns, including sliding windows, backtracking, dynamic programming, and binary search. It provides specific templates for managing binary search trees, searching rotated sorted arrays, and executing divide-and-conquer decompositions.

The collection covers a wide range of computer science fundamentals, including the implementation of linked lists, stacks, queues, and hash maps. It includes capabilities for graph traversal using breadth-first and depth-first search, sorting via merge and quick sort, and various bitwise operations.

The project is implemented in Go.

Features

  • Technical Interview Preparation - Serves as a comprehensive guide and template library for mastering technical interview problem patterns.
  • Algorithmic Templates - Provides a comprehensive library of reusable code patterns to standardize the approach for solving common algorithmic problems.
  • Algorithmic Problem Solving - Provides a comprehensive library of reusable code patterns for mastering data structures and algorithms.
  • Algorithmic References - Acts as a reference for optimized strategies including sliding windows, backtracking, dynamic programming, and binary search.
  • Computer Science Fundamentals - Offers practical exercises covering core computer science fundamentals, including sorting algorithms, graph traversal, and bitwise operations.
  • Data Structures and Algorithms - Provides implementations and study materials for fundamental data structures including linked lists, stacks, and queues.
  • Data Structure Implementations - Implements fundamental data structures such as linked lists, binary trees, stacks, and queues as educational code examples.
  • Depth-First Search Implementations - Provides practical implementations of depth-first search for state space exploration and backtracking.
  • Divide And Conquer Algorithms - Provides algorithms that decompose complex computational problems into smaller sub-problems to reach a solution.
  • Breadth-First Search - Implements a breadth-first search strategy for traversing tree and graph data structures level by level.
  • Algorithm Implementations - Provides practical code implementations of algorithms and design patterns used to solve computational problems.
  • Interview-Focused Problem Sets - Curates a study journey of high-frequency problem sets organized for interview preparation.
  • Fundamental Algorithm Study - Provides a structured learning path for mastering fundamental algorithmic techniques and dynamic programming.
  • Sliding Window Algorithms - Implements techniques for processing contiguous subarrays or substrings using a moving window of fixed or variable size.
  • Sorting Algorithms - Implements essential sorting algorithms like quick sort, merge sort, and heap sort for educational study.
  • Algorithmic Problem Solving - Guides the development of algorithmic thinking through the practice of recursion, sliding windows, and tree structures.
  • Recursive Problem Solving - Provides standardized templates for solving problems through recursive decomposition and state transitions.
  • Technical Learning Paths - Provides a structured learning sequence from basic concepts to advanced interview problems.
  • Binary Search Trees - Implements binary search tree operations including node insertion, deletion, and structural validation.
  • Binary Search Algorithms - Provides reusable templates for binary search to locate target values or boundaries in sorted arrays.
  • Interview Templates - Provides a library of reusable code templates for common data structures and algorithms used in technical interviews.
  • Recursive Tree Traversal Algorithms - Provides implementations of pre-order, in-order, and post-order tree traversal sequences.
  • Binary Tree Traversals - Provides recursive and iterative implementations of preorder, inorder, and postorder binary tree traversals.
  • Backtracking Algorithms - Implements algorithms that systematically explore solution spaces by reverting to previous states.
  • Merge Sorts - Implements sorting algorithms that recursively divide and merge sequences to achieve ordered results.
  • Quick Sorts - Provides pivot-based partitioning algorithms for recursive array sorting.
  • Two-Pointer Strategies - Implements algorithmic patterns using multiple indices to traverse linear data structures in-place.
  • Key-Value Pair Managers - Provides templates for managing key-value mappings including deletion and iteration.
  • Competitive Programming Repositories - Organizes source code collections by problem category and algorithm type for competitive programming reference.
  • Competitive Programming Training - Includes structured practice sets and scientific patterns designed to improve speed and accuracy for competitive programming.
  • Queue Simulation Patterns - Implements stacks and queues using Go slices, including simulating queues via stacks.
  • Stack-Based Minimum Finders - Implements a specialized stack that tracks the minimum element in constant time.
  • Balance Verification - Implements algorithms to verify if a binary tree satisfies height-balance criteria.
  • Graph Cloning Patterns - Provides a template for deep copying graphs using maps and recursion to handle cyclic references.
  • Interview Study Paths - Offers a structured learning path and categorized problem sets to build proficiency in algorithmic problem solving.
  • Stack-Based Queues - Demonstrates how to simulate first-in-first-out queue behavior using two last-in-first-out stacks.
  • Sorted Matrix Search Patterns - Implements efficient search algorithms for 2D matrices by treating sorted rows and columns as a continuous search space.
  • Array Element Finding - Implements logic to locate the first instance of a condition change within a sequence.
  • Bitwise Manipulation Utilities - Provides templates for XOR, AND, and shifting patterns to isolate unique elements and count set bits.
  • Pathfinding Algorithms - Implements graph traversal and pathfinding algorithms to find optimal paths through grids.
  • Rotated Sorted Array Search - Ships optimized binary search variations for finding elements in rotated sorted arrays.
  • Sorting Algorithms - Implements general-purpose sorting algorithms for organizing various data collections.
  • Knapsack Problem Solving - Implements knapsack-specific dynamic programming to maximize value within capacity constraints.
  • Sequence Optimization - Determines optimal values for linear sequences including climbing steps and longest increasing subsequences.
  • Cycle Detection Algorithms - Provides algorithms to detect loops and locate cycle starts in linked data structures.
  • Postfix Expression Evaluators - Provides a stack-based evaluator for arithmetic expressions in reverse polish notation.
  • Deep Copy Routines - Implements routines to create deep copies of linked lists containing random pointers.
  • Linked List Analysis Utilities - Provides analysis utilities to verify if a linked list is a palindrome.
  • Duplicate Node Removal - Provides utilities to remove duplicate elements from sorted linked lists.
  • Linked List Sorting Algorithms - Provides optimized routines for merging two sorted linked lists into a single sorted sequence.
  • Linked List Topology Transformers - Provides routines for reversing the order of nodes in a linked list or specific sub-sections.
  • Partitioning Algorithms - Implements logic to partition linked list nodes around a target value.
  • Reordering Routines - Implements complex node rearrangements such as interleaving the first and second halves of a list.
  • Memoization Caches - Includes utilities for caching function results to optimize performance and prevent redundant computation in dynamic programming.
  • Repetition-Based String Decoders - Implements stack-based parsing to decode compressed strings with nested repetition patterns.
  • Cycle Detection - Uses fast and slow pointer techniques to detect cycles and identify midpoints in linked lists.

Historial de estrellas

Gráfico del historial de estrellas de greyireland/algorithm-patternGráfico del historial de estrellas de greyireland/algorithm-pattern

Búsqueda con IA

Explora más repositorios increíbles

Describe lo que necesitas en lenguaje sencillo: la IA clasifica miles de proyectos open-source curados por relevancia.

Start searching with AI

Colecciones destacadas con Algorithm Pattern

Colecciones seleccionadas manualmente donde aparece Algorithm Pattern.
  • Estructuras de datos y algoritmos

Alternativas open-source a Algorithm Pattern

Proyectos open-source similares, clasificados según cuántas características comparten con Algorithm Pattern.
  • azl397985856/leetcodeAvatar de azl397985856

    azl397985856/leetcode

    55,758Ver en GitHub↗

    This project is a curated educational resource and solution repository for algorithmic challenges, specifically focused on LeetCode problems. It serves as a technical reference for common data structures and algorithmic patterns, providing verified code implementations across multiple programming languages alongside detailed logic and complexity analysis. The repository functions as a comprehensive study guide for competitive programming and technical interview preparation. It includes specialized learning tools such as an Anki flashcard dataset for spaced repetition and a browser extension t

    JavaScriptalgoalgorithmalgorithms
    Ver en GitHub↗55,758
  • chefyuan/algorithm-baseAvatar de chefyuan

    chefyuan/algorithm-base

    10,702Ver en GitHub↗

    algorithm-base is an educational library and study guide designed for simulating algorithms and studying data structures. It functions as an execution visualizer that renders step-by-step state changes and pointer updates through animated simulations to illustrate how data movement works. The project distinguishes itself by mapping conceptual logic directly to multi-language source code implementations. It utilizes a comparative analysis framework to evaluate different algorithmic strategies based on stability, time complexity, and space complexity, while organizing problems by underlying mec

    algorithmsbaseinterview-practice
    Ver en GitHub↗10,702
  • gyoogle/tech-interview-for-developerAvatar de gyoogle

    gyoogle/tech-interview-for-developer

    17,417Ver en GitHub↗

    This project is a comprehensive technical interview preparation resource and computer science interview guide. It serves as an educational reference for developers to study core software engineering fundamentals and common coding patterns required for employment screenings. The repository provides detailed guides and references covering data structures and algorithms, networking and security, operating systems, and web development. It specifically focuses on the implementation and complexity analysis of sorting, searching, and graph algorithms. The material encompasses a wide breadth of comp

    Javaalgorithmcomputer-sciencecs
    Ver en GitHub↗17,417
  • awangdev/leet-codeAvatar de awangdev

    awangdev/leet-code

    4,344Ver en GitHub↗

    This project is a curated reference library of algorithmic patterns, data structure implementations, and system design notes. It serves as a Java algorithmic problem set and a competitive programming guide, providing a collection of solutions for coding challenges from platforms like LeetCode and LintCode. The library is distinguished by its comprehensive set of Java implementations for advanced data structures and algorithmic strategies. It includes detailed references for solving complex problems with accompanying time and space complexity analysis. The project covers a broad surface of co

    Javaalgorithmdynamicprogrammingjava
    Ver en GitHub↗4,344
Ver las 30 alternativas a Algorithm Pattern→

Preguntas frecuentes

¿Qué hace greyireland/algorithm-pattern?

This project is an algorithm template library and coding interview study guide providing reusable code patterns for common data structures and algorithms. It serves as a reference for optimized strategies and a structured learning path to build proficiency in algorithmic problem solving and competitive programming.

¿Cuáles son las características principales de greyireland/algorithm-pattern?

Las características principales de greyireland/algorithm-pattern son: Technical Interview Preparation, Algorithmic Templates, Algorithmic Problem Solving, Algorithmic References, Computer Science Fundamentals, Data Structures and Algorithms, Data Structure Implementations, Depth-First Search Implementations.

¿Qué alternativas de código abierto existen para greyireland/algorithm-pattern?

Las alternativas de código abierto para greyireland/algorithm-pattern incluyen: azl397985856/leetcode — This project is a curated educational resource and solution repository for algorithmic challenges, specifically… chefyuan/algorithm-base — algorithm-base is an educational library and study guide designed for simulating algorithms and studying data… gyoogle/tech-interview-for-developer — This project is a comprehensive technical interview preparation resource and computer science interview guide. It… awangdev/leet-code — This project is a curated reference library of algorithmic patterns, data structure implementations, and system design… mandliya/algorithms_and_data_structures — This project is a comprehensive collection of C++ libraries and toolkits providing reference implementations for data… kodecocodes/swift-algorithm-club — This project is a comprehensive collection of common computer science algorithms and data structures implemented in…