Skip to content

kvmuralikrishna1993/CodeBrush

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

45 Commits
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Code Brush

Overview

Code Brush is a structured repository for organizing completed problems, data structures, sorting algorithms, search trees, and design patterns. This repository is categorized into multiple folders to help with efficient learning and problem-solving.

Folder Structure

1. ADT

This directory includes various Abstract Data Types (ADT) implementations such as:

  • Linked Lists
  • Trees
  • Stacks & Queues
  • Union-Find Data Structures

2. Sort

This folder contains implementations of sorting algorithms, including:

  • BasicSorts: Insertion Sort, Bubble Sort, Selection Sort.
  • QuickSorts: QuickSort and its optimized versions.
  • MergeSorts: MergeSort, Optimized MergeSort, and Bottom-Up MergeSort.
  • OptionalSorts: Additional sorting algorithms like Shell Sort, Bucket Sort, Radix Sort, and Shuffle Sort.

3. Search

This directory contains tree-based search algorithms and data structures, including:

  • Binary Search Tree (BST)
  • AVL Tree
  • Red-Black Tree
  • HashMaps and Symbol Tables
  • Tree Traversals

4. CodingPatterns

This section contains a curated set of simple problems demonstrating key software design patterns.

5. Problems

This folder contains coding problems categorized as:

  • CodingPatterns: Must-do problems based on important coding patterns.
  • Easy: Basic problems for warm-up and foundational understanding.
  • Advanced: A collection of medium and difficult problems.

Additional Files

  • .gitignore: To exclude unnecessary files.
  • README.md: This documentation file.

Folder Structure:

|-- codebrush
|   |-- ADT
|   |   |-- Node.java βœ…
|   |   |-- LinkedList.java βœ…
|   |   |-- DoubleLinkedList.java
|   |   |-- Stack.java βœ…
|   |   |-- Queue.java βœ…
|   |   |-- QuickFind.java
|   |   |-- QuickUnion.java
|   |   |-- WeightedQuickUnion.java
|   |   |-- PriorityQueue.java
|   |   |-- BinaryTree.java
|   |   |-- BinaryHeap.java
|   |   |-- README.md
|   |-- Sort
|   |   |-- BasicSorts
|   |   |   |-- InsertionSort.java βœ…
|   |   |   |-- BubbleSort.java βœ…
|   |   |   |-- SelectionSort.java βœ…
|   |   |-- MergeSorts
|   |   |   |-- MergeSort.java
|   |   |   |-- MergeSortOptimised.java
|   |   |   |-- MergeSortBottomUp.java
|   |   |-- QuickSorts
|   |   |   |-- QuickSort.java
|   |   |   |-- QuickSortOptimised.java
|   |   |-- HeapSort.java
|   |   |-- OptionalSorts
|   |   |   |-- ShellSort.java
|   |   |   |-- ShuffleSort.java
|   |   |   |-- RadixSort.java
|   |   |   |-- BucketSort.java
|   |   |-- README.md
|   |-- Search
|   |   |-- BinarySearch.java
|   |   |-- TreeNode.java
|   |   |-- BinarySearchTree.java
|   |   |-- BinarySearchTreeOrdered.java
|   |   |-- TreeTraversals.java
|   |   |-- RedBlackTree.java
|   |   |-- AVLTree.java
|   |   |-- SymbolTable.java
|   |   |-- HashMap.java
|   |   |-- README.md
|   |-- java	[MAIN FILE]
|   |-- CodingPatterns
|   |   |-- README.md
|   |-- Problems
|   |   |-- Easy
|   |   |-- CodingPatterns
|   |   |   |-- README.md
|   |   |-- Advanced"
|-- README.md
|-- .gitignore

Contribution Guide

  1. Ensure code follows a consistent style.
  2. Add meaningful comments and explanations.
  3. Structure problems under the correct category.
  4. Keep README.md updated as new features are added.

This project serves as a well-organized learning tool for mastering Data Structures, Algorithms, and Design Patterns. Happy Coding! πŸš€

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages