Skip to content

steph-crown/dsa

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

31 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Data Structures & Algorithms Learning Repository

A personal repository documenting my journey learning fundamental data structures, algorithms, and problem-solving patterns through hands-on practice.

Overview

This repository contains my implementations and solutions for:

  • Data Structures: Core data structure implementations from scratch
  • Algorithms: Problem-solving solutions and algorithm patterns
  • Coding Challenges: Solutions from platforms like LeetCode and HackerRank
  • Multiple Languages: Practice in TypeScript, JavaScript, Python, Rust, Elixir, and Go

Learning Goals

  • Master fundamental data structures and their implementations
  • Understand common algorithm patterns and when to apply them
  • Improve problem-solving skills through consistent practice
  • Explore different programming languages and their paradigms
  • Build a solid foundation for technical interviews

Repository Structure

dsa/
├── data-structures/          # Core data structure implementations
│   ├── stack.ts             # LIFO (Last In, First Out)
│   ├── queue.ts             # FIFO (First In, First Out)
│   ├── singly-linked-list.ts
│   ├── doubly-linked-list.ts
│   ├── dynamic-array.ts
│   ├── priority-queue.ts
│   └── node.ts              # Shared node implementation
│
├── algorithms/
│   ├── leetcode/            # LeetCode problem solutions
│   │   ├── typescript/      # TypeScript solutions
│   │   │   ├── 26-remove-duplicates-from-sorted-array.ts
│   │   │   ├── 27-remove-element.ts
│   │   │   ├── 80-remove-duplicates-from-sorted-array-II.ts
│   │   │   ├── 88-merge-sorted-array.ts
│   │   │   └── 189-rotate-array.ts
│   │   └── rust/            # Rust solutions
│   │
│   ├── coding-challenges/   # Platform-specific challenges
│   │   └── hackerrank/      # HackerRank solutions
│   │
│   ├── patterns/            # Algorithm patterns & techniques
│   │   └── sliding-window/  # Sliding window pattern examples
│   │       ├── max-subarray.ts
│   │       ├── longest-subarray-with-less-sum.ts
│   │       └── notes.md
│   │
│   └── misc/                # Standalone algorithm implementations
│       ├── matching-brackets.ts
│       ├── pascals-triangle.ex
│       ├── top-k-frequent.ts
│       └── two-strings.js
│
└── notes.md                 # Quick reference notes

Note: This repository is a work in progress and reflects my ongoing learning journey. Solutions may not always be optimal, but they represent my understanding at the time of writing.

About

data structures and algorithms

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published