You are on page 1of 1

Phone directory application using doubly-linked lists

This project can demonstrate the working of contact book applications and also
teach you about data structures like arrays, linked lists, stacks, and queues.
Typically, phone book management encompasses searching, sorting, and deleting
operations. A distinctive feature of the search queries here is that the user sees
suggestions from the contact list after entering each character. You can read the
source-code of freely available projects and replicate the same to develop your
skills.

This project demonstrates how to address the book programs’ function. It also
teaches you about queuing, stacking, linking lists, and arrays. Usually, this
project’s directory includes certain actions like categorising, scanning, and
removing. Subsequently, the client shows recommendations from the address book
after typing each character. This is the web searches’ unique facet. You can
inspect the code of extensively used DSA projects in C++ and applications and
ultimately duplicate them. This helps you to advance your data science career.

https://github.com/OrionJoshi/Music_Player_Using_LinkedList

https://github.com/Rajattheonlyhero/Online-Voting-System-Data-Structure-Project

https://github.com/fsiddh/Data-Structures-in-Real-Life-Projects

What are good side projects to get better at data structures and algorithms?
0) Build a Sudoku Solver & Checker ! It just needs RECURSION. Add UI if you can.
( Coders start numbering things from 0, not one, so the 0th bullet point :P )

1) Make a PHONEBOOK using TRIE data structure.

2) Build a game like Flappy Bird - It will need Object Pool Data Structure to
recycle objects on the screen. Many libraries have an implementation of Objects
Pool, but you can also design your object pool using an array.

3) Build a game like Space-Shooter, you can use data structure like - Quad Tree
( Space Partitioning Data Structure) to optimize the collision detection method
between bullets and enemy objects.Brute force collision detection becomes slow and
when number of objects on screen increase.

4) Build your own library of data structures - Provide custom implementations of


Hashtables, Generic Trees, Stacks, Priority Queue etc with extra features.

5) Build a Snakes & Ladders game, challenge the player to win in minimum number of
moves. You can use BFS to compute it.

6) Make an application like Google Maps - You can use Dijkshtra’s algorithm to find
the shortest paths, A* Search for more efficient & real time use.

7) Use a string compression algorithm, like Run Length Coding or Huffman Coding,
devise your own algorithm to make a project on data compression.

The list is endless. You can think of ideas and work on it. Coding is all about
PROBLEM Solving. Look what’s wrong in your surroundings and try to solve it with
your knowledge and skills. Hope this helps !

You might also like