

Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
The course 'problem solving techniques - ii' (course code: cse 703) which aims to impart the basic concepts of data structures and algorithms, and understand the step-by-step approach in solving problems using appropriate data structures. The course also aims to improve problem-solving skills in operating systems and database management. It covers topics such as design and analysis of algorithms, various algorithm types (divide and conquer, greedy methods, dynamic programming, backtracking, etc.), operating system concepts (processes, scheduling, interprocess communication, deadlocks, memory management), and database management (data modeling, relational data model, sql, normalization, transaction processing, concurrency control). The course provides a comprehensive understanding of problem-solving techniques and their application in computer science domains.
Typology: Thesis
1 / 2
This page cannot be seen from the preview
Don't miss anything!
Course Objective: To impart the basic concepts of data structures and algorithms and understand about writing step by step approach in solving problems with the help of appropriate data structures also improve problem solving skills in operating system and database management.
Course Contents:
Module I: Design and Analysis of Algorithm: (06 Hours)
Introduction: Algorithms, Analyzing Algorithms, Complexity of Algorithms, Growth of Functions, Performance Measurements, Asymptotic Notations. Recurrences- substitution method, recursion tree method, master method Types of algorithm: Divide and Conquer with Examples Such as Sorting, Matrix Multiplication, Convex Hull and Searching. Greedy Methods with Examples Such as Optimal Reliability Allocation, Knapsack, Minimum Spanning Trees – Prim’s and Kruskal’s Algorithms, Single Source Shortest Paths – Dijkstra’s and Bellman Ford Algorithms. Dynamic Programming with Examples Such as Knapsack. All Pair Shortest Paths – Warshal’s and Floyd’s Algorithms, Resource Allocation Problem. Backtracking, Branch and Bound with Examples Such as Travelling Salesman Problem, Graph Coloring, n-Queen Problem, Hamiltonian Cycles and Sum of Subsets.
Module II: Operating System-I: (04 Hours)
Processes and Scheduling policies : Introduction to processes management, operating system views of processes, various process transition states, Introduction to Processor scheduling, Introduction to various types of schedulers, Performance criteria in scheduling algorithms, Concept of FCFS scheduling algorithm, Concept of priority scheduling algorithm like SJF, Concept of non-preemptive and preemptive algorithms, Concept of round-robin scheduling algorithm, , Concept of multi-level queues, feedback queues.
Interprocess Communication: Introduction to Interprocess Communication and Synchronization, Critical regions and Conditional critical regions in a Semaphore. Introduction to monitors, various modes of monitors, Issues in message implementation, Concept of mutual exclusion with messages.
Module III: Operating System-II: (03 Hours)
Dead Locks: Concept of Deadlocks, issues related to its prevention, avoidance and detection/recovery, Concept of deadlock prevention and its avoidance, Concept of deadlock detection and recovery.
Memory Management: Need of Memory management and its requirements, paging, segmentation, concept of fragmentation. Characteristics of contiguous & non-contiguous allocation techniques, Detail study of fragmentation, Virtual memory management, introduction to page-replacement, Need of various page- replacement policies, Concept of FIFO and optimal page-replacement algorithms, Concept of LRU approximation and its page-replacement algorithm,
Module IV: Database Management System-I: (04 Hours)
Data Modeling using the Entity Relationship Model: ER model concepts, notation for ER diagram, mapping constraints, keys, Concepts of Super Key, candidate key, primary key, Generalization, aggregation, reduction of an ER diagrams to tables, extended ER model, relationships of higher degree.
Relational data Model and Language: Relational data model concepts, integrity constraints: entity integrity, referential integrity, Keys constraints, Domain constraints, relational algebra, relational calculus, tuple and domain calculus. Introduction to SQL: Characteristics of SQL. Advantage of SQL. SQL data types and literals. Types of SQL commands. SQL operators and their procedure. Tables, views and indexes. Queries and sub queries. Aggregate functions. Insert, update and delete operations. Joins, Unions, Intersection, Minus, Cursors in SQL.
Module V: Database Management System-II: (03 Hours)
Data Base Design & Normalization: Functional dependencies, normal forms, first, second, third normal forms, BCNF, inclusion dependences, loss less join decompositions, normalization using FD, MVD, and JDs, alternative approaches to database design. Transaction Processing Concepts: Transaction system, Testing of serializability, Serializability of schedules, conflict & view serializable schedule, recoverability, Recovery from transaction failures, log based recovery, checkpoints, deadlock handling. Concurrency Control Techniques: Concurrency control, locking Techniques for concurrency control, Time stamping protocols for concurrency control, validation based protocol, multiple granularity, Multi version schemes, Recovery with concurrent transaction.
Able to analyze algorithms and determine their complexity. Ability to apply the algorithms and design techniques to solve problems. Ability to understand various views and management policies adopted by O.S. as pertaining with processes , Deadlock , memory , File and I/O operations. Ability to understand the concepts of relational data model, entity-relationship model, relational database design, relational algebra and SQL. Ability to improve the database design by normalization.
Examination Scheme:
Components A CT S/V/Q/HA ESE Weightage (%) 5 15 10 70
A: Attendance, CT: Class Test,:, S/V/Q/HA: Seminar/Viva/Quiz/ Home Assignment, ESE: End Semester Examination;
Text: E. Horowitz & S Sahni, "Fundamentals of Computer Algorithms", Thomas H. Coreman, Charles E. Leiserson and Ronald L. Rivest, “Introduction to Algorithms”, Printice Hall of India. A. Silberschatz, P.B. Galvin “Operating System Concepts”, John Willey & son Korth, Silberschatz, “Database System Concepts”, 4th Ed., TMH, 2000. Elmasri, Navathe, “ Fundamentals of Database Systems”, Addision Wesley
Refrence: Aho, Hopcraft, Ullman, “The Design and Analysis of Computer Algorithms” Pearson Education, 2008. Milenekovic, “Operating System Concepts”, McGraw Hill Date C. J., “An Introduction to Database Systems”, 7th Ed., Narosa Publishing.