Skip to content

Collection of practical codes for Savitribai Phule Pune University's Data Structures & Algorithms Laboratory (210257).

License

Notifications You must be signed in to change notification settings

kunalPisolkar24/DSA_Lab

Repository files navigation

Data Structures & Algorithms Laboratory - Savitribai Phule Pune University 💻 🔬

GitHub license GitHub last commit GitHub code size in bytes

Welcome to the Data Structures & Algorithms Laboratory repository for Savitribai Phule Pune University! This repository contains a collection of practical codes for the Data Structures & Algorithms Laboratory course (210257) in the Second Year of Computer Engineering (2019 Course). Let's explore the world of data structures and algorithms together! 🚀

📜 Course Information:

  • University: Savitribai Phule Pune University
  • Course Name: Data Structures & Algorithms Laboratory (210257)
  • Companion Course: Data Structures & Algorithms (210254)
  • Course Objectives:
    • To understand data structures and algorithms
    • To apply data structures for implementing efficient algorithms
  • Course Outcomes:
    • CO1. Understand and apply various data structures to implement efficient algorithms
    • CO2. Apply logic to implement code conversion
    • CO3. Analyze and apply logic to demonstrate processor mode of operation

🎯 Course Topics Covered:

Practical No. Description
1 Consider telephone book database of N clients. Make use of a hash table implementation to quickly look up client‘s telephone number. Make use of two collision handling techniques and compare them using number of comparisons required to find a set of telephone numbers.
2 Implement all the functions of a dictionary (ADT) using hashing and handle collisions using chaining with / without replacement.
3 A book consists of chapters, chapters consist of sections and sections consist of subsections. Construct a tree and print the nodes. Find the time and space requirements of your method.
4 Beginning with an empty binary search tree, Construct binary search tree by inserting the values in the order given.
5 Construct an expression tree from the given prefix expression eg. +--a*bc/def and traverse it using postorder traversal(non recursive) and then delete the entire tree.
6 There are flight paths between cities. If there is a flight between city A and city B then there is an edge between the cities. The cost of the edge can be the time that flight take to reach city B from A, or the amount of fuel used for the journey. Represent this as a graph.
7 You have a business with several offices; you want to lease phone lines to connect them up with each other; and the phone company charges different amounts of money to connect different pairs of cities. You want a set of lines that connects all your offices with a minimum total cost. Solve the problem by suggesting appropriate data structures.
8 Given sequence k = k1 <k2 < … <kn of n sorted keys, with a search probability pi for each key ki . Build the Binary search tree that has the least search cost given the access probability for each key?
9 A Dictionary stores keywords & its meanings. Provide facility for adding new keywords, deleting keywords, updating values of any entry. Provide facility to display whole data sorted in ascending/ Descending order. Also find how many maximum comparisons may require for finding any keyword. Use Height balance tree and find the complexity for finding a keyword.
10 Implement the Heap/Shell sort algorithm implemented in Java demonstrating heap/shell data structure with modularity of programming language.
11 Department maintains a student information. The file contains roll number, name, division and address. Allow user to add, delete information of student. Display information of particular student. If record of student does not exist an appropriate message is displayed. If it is, then the system displays the student details. Use sequential file to main the data.
12 Company maintains employee information as employee ID, name, designation and salary. Allow user to add, delete information of employee. Display information of particular employee. If employee does not exist an appropriate message is displayed. If it is, then the system displays the employee details. Use index sequential file to maintain the data.

📄 Instructions:

To get started with a specific practical, navigate to the corresponding directory and access the code files. Each code file is thoroughly documented, providing clear instructions and explanations to aid your learning experience.

🤝 Contributions:

Contributions from students, educators, and enthusiasts are highly encouraged. If you have additional practicals, improvements, or fixes to share, feel free to open a pull request. Please adhere to the contribution guidelines in CONTRIBUTING.md.

📄 License:

This repository is licensed under the MIT License. You are free to use, modify, and distribute the code for academic and personal purposes.

👩‍💻 Let's Learn Data Structures & Algorithms! 👨‍💻

About

Collection of practical codes for Savitribai Phule Pune University's Data Structures & Algorithms Laboratory (210257).

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages