Skip to content

Basic data structure implementations and methods for teaching purposes

Notifications You must be signed in to change notification settings

neslihancesurr/DataStructures

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Data Structures and Algorithms Repository

This repository was created as part of my Teaching Assistantship for the Data Structures and Algorithms course. The algorithms and methods implemented here are primarily based on the textbook Data Structures and Algorithms by Olcay Taner Yıldız.

Overview

The purpose of this repository is to help students:

  • Understand fundamental data structures and their implementations.
  • Develop new methods to manipulate these structures.
  • Practice debugging and testing their code with diverse test cases.

Important Notes

  • Certain edge cases, particularly those related to input constraints, have not been handled.
  • Some assumptions were made to simplify implementations, as the primary goal is to teach the core concepts.
  • Inheritance was intentionally avoided to maintain clarity, despite potential code repetition.

The repository also includes a Slides directory with presentation materials used in weekly revision sessions.

Contents Overview

Directory Classes
Basics DoubleNode, Element, Node
BinaryTree BinaryTree, TreeNode
DisjointSet DisjointSet, Set, SetTest
Graph Edge, EdgeList, GraphList, GraphMatrix, GraphTest
Hashing HashMap, LinkedHashMap, HashMapTest
Heap Heap, HeapNode, HeapTest
LinkedList CircularList, DoubleList, LinkedList, LinkedListTest
Queue QueueArray, QueueLinked, QueueTest
Stack StackArray, StackLinked, StackTest
Sorting Still in development

Getting Started

  1. Clone the repository:

    git clone https://github.com/neslihancesurr/data-structures.git
  2. Navigate to the project directory:

    cd data-structures
  3. Explore the implementations within the directories listed above.

Contributing

Contributions are welcome! If you'd like to add new algorithms, improve existing implementations, or update the documentation, feel free to submit a pull request.


Happy practising! 😊

About

Basic data structure implementations and methods for teaching purposes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages