Micro project using data structure (stack&queue).pptx
pproject345
9 views
11 slides
Oct 20, 2024
Slide 1 of 11
1
2
3
4
5
6
7
8
9
10
11
About This Presentation
For data science
Size: 1.16 MB
Language: en
Added: Oct 20, 2024
Slides: 11 pages
Slide Content
To-do List with Stack and QueueCreate. Group Members Roll No. Om Dhatrak 124AM3233A Soham Kambali 124AM3094A Jaideep Kate 12AM3062A Chaitali Gawade 124AM3129B
Introduction LIFO is Last in First out & FIFO is First in FIrst our This project creates a simple to-do list where tasks are managed using stacks and queues: Objective : Organize tasks efficiently, using a stack for recent tasks ( LIFO ) and a queue for older tasks ( FIFO ) Why Stack and Queue? Stack: Ideal for quick access to recent tasks, where the most recent task is handled first ( LIFO ). Queue : Perfect for processing tasks in the order they were added, ensuring older tasks get completed first ( FIFO ). This approach helps prioritize tasks efficiently based on urgency and age.
Problem Statements: Challenges - Lists can become cluttered with a mix of old and new tasks. - No clear structure for handling urgent vs. older tasks. Solutions - Stack : Provides quick access to recent, urgent tasks. - Queue : Ensures older tasks are completed in the order they were added. Traditional to-do lists struggle with prioritizing urgent tasks and managing older tasks efficiently. Using these data structures improves task management by prioritizing tasks based on urgency and age.
Stack & Queue Concepts Stack (LIFO): Works like a stack of plates—last added is the first one removed. In the To-Do List: Quickly access and complete the most recent task. LIFO FIFO Queue (FIFO): Like a line of people—first in, first out. In the To-Do List: Older tasks are completed before newer ones, so none are forgotten.
Implementation Approach 1 2 3 Adding a Task: Urgent tasks go to the stack, while older tasks are added to the queue. Removing a Task: Tasks are removed from the stack (urgent) or the queue (older) when completed. Tech Stack: Language : C, using arrays for stack and queue. Functions : push(), pop() for stack; enqueue(), dequeue() for queue.
Demo/WorkFlow Diagram
Challenges & Solutions Managing Stack And Queue: Designing logic to balance tasks between stack (urgent) and queue (older). Memory Management: Handling dynamic memory allocation in C for stack and queue arrays. Edge Cases: Preventing stack underflow and queue overflow requires careful testing. Anticipated Challanges:
Challenges & Solutions Build a prototype to test basic task handling. 01 02 03 Add features like task priority and deadlines. Create a user-friendly interface for managing tasks. Future Plans:
Conclusion Project Summary: This project shows how stacks and queues can efficiently manage tasks in a to-do list. Urgent tasks are handled with a stack, while older tasks are managed with a queue. Achievements: Effective task management using basic data structures in C.