munotes®
Semester 2: Notes + practical solutions + solved papers
Or either one alone: ₹499
₹798 ₹998 Unlock Semester 2

B.Sc. (Computer Science) Semester 2: Notes and Solved Previous Year Question Papers 2026

For students of Mumbai University and all its affiliated colleges.

See what you get before you pay

Covers, contents and the first answer of each solved paper are open. No sign-in needed.

As per latest University of Mumbai syllabus

613 B.Sc. (Computer Science) students from 173 colleges affiliated to the University of Mumbai read munotes. Counted from accounts, so it leaves out everyone who reads without signing in.

What do you get

  • All the notes of all the subjects in Semester 2, as per the latest syllabus 2026.
  • The practical subjects too, worked out exercise by exercise: 1 practical book of 34 chapters, beside 5 theory books of 399.
  • Previous year question papers, with full solutions. Database Management Systems Using PL SQL, Web Technologies and Computer Science Practical 2 have no solved papers, so they are not included.
  • Your own dashboard, where you can track everything you have read, subject by subject.
  • Priority access in our MU B.Sc. (Computer Science) student group. The groups are open, so you can send a message any time.
  • Valid for one year, 365 days from the day you pay.
  • If the University revises the syllabus while your year is running, the notes are rewritten to match and you read the new version at no extra cost. You are never asked to buy the same semester twice.
  1. Database Management Systems Using PL SQL

    Official Notes munotes.in

    Database Management Systems Using PL SQL

    B.SC. (COMPUTER SCIENCE) · SEMESTER 2

    Strictly as per the University of Mumbai NEP syllabus in force for B.Sc. (Computer Science)

    For B.Sc. (Computer Science) students of the University of Mumbai and all its affiliated colleges

    munotes.in First Year

    Database Management Systems Using PL SQL

    Copyright © 2026 munotes.in. All rights reserved.

    Written and first published by munotes.in, 2026.

    This book is for individual students to read at munotes.in. No part of it may be reproduced, distributed, stored, translated or used for institutional or classroom purposes in any form without a prior written licence from munotes.in.

    Licensing and permissions: contact@munotes.in

    The text of statutes and of judgments reproduced in this book is in the public domain under section 52(1)(q) of the Copyright Act 1957. The commentary, arrangement, examples and questions are the original work of munotes.in.

    munotes.in is an independent study resource for MU students. It is not affiliated with, endorsed by, or officially connected to the University of Mumbai. Course names and university references describe the students and syllabus the material relates to.

    munotes.in

    Contents

    Module I PL/SQL fundamentals, sequences, stored procedures and functions, collections and records, and error handling

    1. How This Practical Is Examined: the Journal, the Slip and the Viva 1
    2. Data, the Database and the DBMS: What SQL Does and Where It Stops 6
    3. Setting Up Oracle: Installing, Connecting and Typing In the Lab Tables 10
    4. Oracle SQL After MySQL: VARCHAR2, NUMBER, DATE and the DUAL Table 16
    5. What PL/SQL Is: Oracle's Procedural Extension to SQL 21
    6. The Advantages of PL/SQL 25
    7. The Main Features of PL/SQL 30
    8. The Architecture of PL/SQL: the PL/SQL Engine and the SQL Engine 36
    9. Your First Anonymous Block: DECLARE, BEGIN, EXCEPTION and END 41
    10. Character Sets: the Characters PL/SQL Reads 45
    11. Lexical Units: Delimiters and Identifiers 48
    12. Lexical Units: Literals, Comments and Whitespace 52
    13. Declarations: Variables, Constants, NOT NULL and DEFAULT 56
    14. Declarations: %TYPE, a Variable That Takes Its Type From a Column 60
    15. References to Identifiers: Simple, Qualified and Remote Names 63
    16. Scope and Visibility of Identifiers: Nested Blocks and Labels 66
    munotes.in

    Contents continued

    Module I continued PL/SQL fundamentals, sequences, stored procedures and functions, collections and records, and error handling

    1. Assigning Values to Variables: the Assignment Statement and SELECT INTO 69
    2. Taking Input: Substitution Variables With & and ACCEPT 72
    3. Expressions: Operators, Precedence and Concatenation 76
    4. Expressions: BOOLEAN Logic, NULL and Short-Circuit Evaluation 80
    5. Expressions: CASE Expressions and SQL Functions in PL/SQL 86
    6. Error-Reporting Functions: SQLCODE and SQLERRM 93
    7. Data Types: Numbers, Characters, Dates and BOOLEAN 98
    8. Data Types: PLS_INTEGER, SIMPLE_INTEGER and Subtypes 103
    9. Using PL/SQL for Data Management: Reading One Row With SELECT INTO 107
    10. Using PL/SQL for Data Management: INSERT, UPDATE and DELETE in a Block 111
    11. Conditional Selection: IF THEN, IF THEN ELSE and ELSIF 115
    12. Conditional Selection: the Simple and the Searched CASE Statement 122
    13. LOOP Statements: the Basic LOOP, EXIT and EXIT WHEN 128
    14. LOOP Statements: the WHILE LOOP 133
    15. LOOP Statements: the FOR LOOP and REVERSE 138
    16. LOOP Statements: Nested Loops, Labels and CONTINUE 143
    17. Sequential Control Statements: GOTO and Labels 148
    munotes.in

    Contents continued

    Module I continued PL/SQL fundamentals, sequences, stored procedures and functions, collections and records, and error handling

    1. The NULL Statement: Doing Nothing on Purpose 153
    2. Worked Programs: Conditions and Loops 156
    3. Sequences: What They Are and CREATE SEQUENCE 161
    4. Referencing a Sequence: NEXTVAL and CURRVAL 165
    5. Altering and Dropping a Sequence, and Identity Columns 171
    6. Stored Procedures: What They Are, Their Types and Their Benefits 177
    7. Creating a Stored Procedure: CREATE OR REPLACE PROCEDURE 181
    8. Procedure Parameters: IN, OUT and IN OUT 185
    9. Passing Parameters: Positional, Named and Mixed Notation, and DEFAULT 189
    10. Executing a Stored Procedure: EXECUTE, a Block and Another Procedure 192
    11. Altering a Stored Procedure: CREATE OR REPLACE, ALTER PROCEDURE and Recompiling 196
    12. Viewing Stored Procedures: USER_SOURCE, USER_OBJECTS and USER_PROCEDURES 200
    13. Functions: CREATE OR REPLACE FUNCTION and RETURN 206
    14. Calling a Function: From PL/SQL, From SQL and at the Prompt 212
    15. Recursive Functions: Factorial, Fibonacci and the GCD 216
    16. Worked Programs: Sequences, Procedures and Functions 221
    munotes.in

    Contents continued

    Module I continued PL/SQL fundamentals, sequences, stored procedures and functions, collections and records, and error handling

    1. Collections and Records: When One Variable Must Hold Many Values 226
    2. Associative Arrays: INDEX BY PLS_INTEGER and INDEX BY VARCHAR2 230
    3. Varrays: Variable-Size Arrays 234
    4. Nested Tables 238
    5. Collection Constructors 243
    6. Assigning Values to Collection Variables 247
    7. Multidimensional Collections: a Collection of Collections 252
    8. Collection Comparisons: IS NULL, Equality and Multiset Conditions 257
    9. Collection Methods: COUNT, FIRST, LAST, PRIOR, NEXT and LIMIT 262
    10. Collection Methods: EXISTS, EXTEND, TRIM and DELETE 267
    11. Collection Types Defined in a Package Specification 272
    12. Record Variables: %ROWTYPE and RECORD Types 275
    13. Assigning Values to Record Variables: SELECT INTO, FETCH and RETURNING 282
    14. Worked Programs: Collections and Records 288
    15. Compile-Time Warnings: PLSQL_WARNINGS and SHOW ERRORS 294
    16. Overview of Exception Handling: the EXCEPTION Section and WHEN OTHERS 299
    munotes.in

    Contents continued

    Module I continued PL/SQL fundamentals, sequences, stored procedures and functions, collections and records, and error handling

    1. Internally Defined Exceptions: Naming an ORA Error With PRAGMA EXCEPTION_INIT 307
    2. Predefined Exceptions: NO_DATA_FOUND, TOO_MANY_ROWS, ZERO_DIVIDE and the Rest 312
    3. User-Defined Exceptions: Declare, RAISE and Handle 317
    4. Redeclared Predefined Exceptions: Why You Must Never Do It 321
    5. Raising Exceptions Explicitly: RAISE and RAISE_APPLICATION_ERROR 324
    6. Exception Propagation: How an Exception Travels Out of a Block 329
    7. Unhandled Exceptions: What the Caller Sees, and What Is Rolled Back 333
    8. Worked Programs: Exceptions 337

    Module II Cursors, static and dynamic SQL, transaction processing and control, triggers and packages

    1. What a Cursor Is: the Work Area Behind Every Query 344
    2. Types of Cursors: Implicit and Explicit 349
    3. The INVALID_CURSOR Exception, and CURSOR_ALREADY_OPEN 354
    4. Description of Static SQL: the Statements PL/SQL Runs Directly 359
    5. Cursors Overview: the Implicit Cursor and Its Attributes 364
    6. Cursors Overview: Explicit Cursors, Their Attributes and Parameters 368
    munotes.in

    Contents continued

    Module II continued Cursors, static and dynamic SQL, transaction processing and control, triggers and packages

    1. Processing Query Result Sets: SELECT INTO and the Cursor FOR LOOP 376
    2. Processing Query Result Sets: BULK COLLECT, LIMIT and FORALL 383
    3. Cursor Variables: REF CURSOR and SYS_REFCURSOR 390
    4. Passing Cursor Variables To and From Subprograms 398
    5. CURSOR Expressions: a Cursor Inside a Query 404
    6. Worked Programs: Cursors 408
    7. Transaction Processing and Control: COMMIT, ROLLBACK, SAVEPOINT and SET TRANSACTION 414
    8. Autonomous Transactions: PRAGMA AUTONOMOUS_TRANSACTION 421
    9. The Commit Protocol: What COMMIT Does, and the Two-Phase Commit 427
    10. Concurrency Control: What Goes Wrong When Two Sessions Share Data 434
    11. Concurrency Control: Isolation Levels in Oracle 440
    12. Lock Management: Row Locks, Table Locks and SELECT FOR UPDATE 445
    13. Read-Write Locks: Shared and Exclusive Locks, and LOCK TABLE 450
    14. Deadlocks: How They Happen, ORA-00060 and How to Avoid Them 454
    15. Crash Recovery: the Redo Log, Undo and Instance Recovery 462
    16. Dynamic SQL: Native Dynamic SQL With EXECUTE IMMEDIATE 469
    17. Native Dynamic SQL: Bind Variables, USING, INTO and OPEN FOR 476
    munotes.in

    Contents continued

    Module II continued Cursors, static and dynamic SQL, transaction processing and control, triggers and packages

    1. The DBMS_SQL Package 482
    2. SQL Injection: How It Happens and How to Stop It 488
    3. Overview of Triggers: What a Trigger Is and When It Fires 492
    4. Creating Triggers: CREATE OR REPLACE TRIGGER, Row and Statement Level 499
    5. :NEW and :OLD, and the WHEN Clause 505
    6. Insert Triggers 511
    7. Delete Triggers 516
    8. Update Triggers: UPDATE OF a Column, and INSERTING, UPDATING and DELETING 521
    9. Nested Triggers: One Trigger Firing Another, and the Mutating Table 526
    10. Viewing Triggers: USER_TRIGGERS and USER_SOURCE 533
    11. Deleting and Modifying Triggers: DROP TRIGGER, CREATE OR REPLACE and ALTER TRIGGER 537
    12. Enforcing Data Integrity Through Triggers 541
    13. INSTEAD OF and System Triggers: the Other Kinds 550
    14. Worked Programs: Triggers 556
    15. What a Package Is, and Why You Need One 563
    16. The Package Specification: What Others May Use 570
    17. The Package Body: Public and Private Parts 576
    munotes.in

    Contents continued

    Module II continued Cursors, static and dynamic SQL, transaction processing and control, triggers and packages

    1. Package Instantiation and Initialization: Package State 584
    2. Creating Nested Table Columns: NESTED TABLE ... STORE AS 590
    3. Working With Nested Table Columns: Query, Insert, Update and Delete 595
    4. Worked Programs: Packages and Nested Tables 601

    Module J The journal, the practical examination and the viva

    1. The Certified Journal: How to Write Up Each Practical 607
    2. Practice Questions for Q.1: Module 1 Programs 615
    3. Practice Questions for Q.2: Module 2 Programs 624
    4. The Viva: Questions and Answers 635
    5. When It Does Not Work: the Errors You Will Meet 658
    munotes.in

    Page 1 onwards

    munotes.in

    664 pages in this book. The cover and the contents are above. Everything from page one is in the pass.

    Notes
    2026 Edition, as per the latest syllabus. 664 pages.
    Every chapter in the notes: 122 chapters across 3 modules

    Module I PL/SQL fundamentals, sequences, stored procedures and functions, collections and records, and error handling 73 chapters

    1. 1 How This Practical Is Examined: the Journal, the Slip and the Viva pages 1 to 5
    2. 2 Data, the Database and the DBMS: What SQL Does and Where It Stops pages 6 to 9
    3. 3 Setting Up Oracle: Installing, Connecting and Typing In the Lab Tables pages 10 to 15
    4. 4 Oracle SQL After MySQL: VARCHAR2, NUMBER, DATE and the DUAL Table pages 16 to 20
    5. 5 What PL/SQL Is: Oracle's Procedural Extension to SQL pages 21 to 24
    6. 6 The Advantages of PL/SQL pages 25 to 29
    7. 7 The Main Features of PL/SQL pages 30 to 35
    8. 8 The Architecture of PL/SQL: the PL/SQL Engine and the SQL Engine pages 36 to 40
    9. 9 Your First Anonymous Block: DECLARE, BEGIN, EXCEPTION and END pages 41 to 44
    10. 10 Character Sets: the Characters PL/SQL Reads pages 45 to 47
    11. 11 Lexical Units: Delimiters and Identifiers pages 48 to 51
    12. 12 Lexical Units: Literals, Comments and Whitespace pages 52 to 55
    13. 13 Declarations: Variables, Constants, NOT NULL and DEFAULT pages 56 to 59
    14. 14 Declarations: %TYPE, a Variable That Takes Its Type From a Column pages 60 to 62
    15. 15 References to Identifiers: Simple, Qualified and Remote Names pages 63 to 65
    16. 16 Scope and Visibility of Identifiers: Nested Blocks and Labels pages 66 to 68
    17. 17 Assigning Values to Variables: the Assignment Statement and SELECT INTO pages 69 to 71
    18. 18 Taking Input: Substitution Variables With & and ACCEPT pages 72 to 75
    19. 19 Expressions: Operators, Precedence and Concatenation pages 76 to 79
    20. 20 Expressions: BOOLEAN Logic, NULL and Short-Circuit Evaluation pages 80 to 85
    21. 21 Expressions: CASE Expressions and SQL Functions in PL/SQL pages 86 to 92
    22. 22 Error-Reporting Functions: SQLCODE and SQLERRM pages 93 to 97
    23. 23 Data Types: Numbers, Characters, Dates and BOOLEAN pages 98 to 102
    24. 24 Data Types: PLS_INTEGER, SIMPLE_INTEGER and Subtypes pages 103 to 106
    25. 25 Using PL/SQL for Data Management: Reading One Row With SELECT INTO pages 107 to 110
    26. 26 Using PL/SQL for Data Management: INSERT, UPDATE and DELETE in a Block pages 111 to 114
    27. 27 Conditional Selection: IF THEN, IF THEN ELSE and ELSIF pages 115 to 121
    28. 28 Conditional Selection: the Simple and the Searched CASE Statement pages 122 to 127
    29. 29 LOOP Statements: the Basic LOOP, EXIT and EXIT WHEN pages 128 to 132
    30. 30 LOOP Statements: the WHILE LOOP pages 133 to 137
    31. 31 LOOP Statements: the FOR LOOP and REVERSE pages 138 to 142
    32. 32 LOOP Statements: Nested Loops, Labels and CONTINUE pages 143 to 147
    33. 33 Sequential Control Statements: GOTO and Labels pages 148 to 152
    34. 34 The NULL Statement: Doing Nothing on Purpose pages 153 to 155
    35. 35 Worked Programs: Conditions and Loops pages 156 to 160
    36. 36 Sequences: What They Are and CREATE SEQUENCE pages 161 to 164
    37. 37 Referencing a Sequence: NEXTVAL and CURRVAL pages 165 to 170
    38. 38 Altering and Dropping a Sequence, and Identity Columns pages 171 to 176
    39. 39 Stored Procedures: What They Are, Their Types and Their Benefits pages 177 to 180
    40. 40 Creating a Stored Procedure: CREATE OR REPLACE PROCEDURE pages 181 to 184
    41. 41 Procedure Parameters: IN, OUT and IN OUT pages 185 to 188
    42. 42 Passing Parameters: Positional, Named and Mixed Notation, and DEFAULT pages 189 to 191
    43. 43 Executing a Stored Procedure: EXECUTE, a Block and Another Procedure pages 192 to 195
    44. 44 Altering a Stored Procedure: CREATE OR REPLACE, ALTER PROCEDURE and Recompiling pages 196 to 199
    45. 45 Viewing Stored Procedures: USER_SOURCE, USER_OBJECTS and USER_PROCEDURES pages 200 to 205
    46. 46 Functions: CREATE OR REPLACE FUNCTION and RETURN pages 206 to 211
    47. 47 Calling a Function: From PL/SQL, From SQL and at the Prompt pages 212 to 215
    48. 48 Recursive Functions: Factorial, Fibonacci and the GCD pages 216 to 220
    49. 49 Worked Programs: Sequences, Procedures and Functions pages 221 to 225
    50. 50 Collections and Records: When One Variable Must Hold Many Values pages 226 to 229
    51. 51 Associative Arrays: INDEX BY PLS_INTEGER and INDEX BY VARCHAR2 pages 230 to 233
    52. 52 Varrays: Variable-Size Arrays pages 234 to 237
    53. 53 Nested Tables pages 238 to 242
    54. 54 Collection Constructors pages 243 to 246
    55. 55 Assigning Values to Collection Variables pages 247 to 251
    56. 56 Multidimensional Collections: a Collection of Collections pages 252 to 256
    57. 57 Collection Comparisons: IS NULL, Equality and Multiset Conditions pages 257 to 261
    58. 58 Collection Methods: COUNT, FIRST, LAST, PRIOR, NEXT and LIMIT pages 262 to 266
    59. 59 Collection Methods: EXISTS, EXTEND, TRIM and DELETE pages 267 to 271
    60. 60 Collection Types Defined in a Package Specification pages 272 to 274
    61. 61 Record Variables: %ROWTYPE and RECORD Types pages 275 to 281
    62. 62 Assigning Values to Record Variables: SELECT INTO, FETCH and RETURNING pages 282 to 287
    63. 63 Worked Programs: Collections and Records pages 288 to 293
    64. 64 Compile-Time Warnings: PLSQL_WARNINGS and SHOW ERRORS pages 294 to 298
    65. 65 Overview of Exception Handling: the EXCEPTION Section and WHEN OTHERS pages 299 to 306
    66. 66 Internally Defined Exceptions: Naming an ORA Error With PRAGMA EXCEPTION_INIT pages 307 to 311
    67. 67 Predefined Exceptions: NO_DATA_FOUND, TOO_MANY_ROWS, ZERO_DIVIDE and the Rest pages 312 to 316
    68. 68 User-Defined Exceptions: Declare, RAISE and Handle pages 317 to 320
    69. 69 Redeclared Predefined Exceptions: Why You Must Never Do It pages 321 to 323
    70. 70 Raising Exceptions Explicitly: RAISE and RAISE_APPLICATION_ERROR pages 324 to 328
    71. 71 Exception Propagation: How an Exception Travels Out of a Block pages 329 to 332
    72. 72 Unhandled Exceptions: What the Caller Sees, and What Is Rolled Back pages 333 to 336
    73. 73 Worked Programs: Exceptions pages 337 to 343

    Module II Cursors, static and dynamic SQL, transaction processing and control, triggers and packages 44 chapters

    1. 74 What a Cursor Is: the Work Area Behind Every Query pages 344 to 348
    2. 75 Types of Cursors: Implicit and Explicit pages 349 to 353
    3. 76 The INVALID_CURSOR Exception, and CURSOR_ALREADY_OPEN pages 354 to 358
    4. 77 Description of Static SQL: the Statements PL/SQL Runs Directly pages 359 to 363
    5. 78 Cursors Overview: the Implicit Cursor and Its Attributes pages 364 to 367
    6. 79 Cursors Overview: Explicit Cursors, Their Attributes and Parameters pages 368 to 375
    7. 80 Processing Query Result Sets: SELECT INTO and the Cursor FOR LOOP pages 376 to 382
    8. 81 Processing Query Result Sets: BULK COLLECT, LIMIT and FORALL pages 383 to 389
    9. 82 Cursor Variables: REF CURSOR and SYS_REFCURSOR pages 390 to 397
    10. 83 Passing Cursor Variables To and From Subprograms pages 398 to 403
    11. 84 CURSOR Expressions: a Cursor Inside a Query pages 404 to 407
    12. 85 Worked Programs: Cursors pages 408 to 413
    13. 86 Transaction Processing and Control: COMMIT, ROLLBACK, SAVEPOINT and SET TRANSACTION pages 414 to 420
    14. 87 Autonomous Transactions: PRAGMA AUTONOMOUS_TRANSACTION pages 421 to 426
    15. 88 The Commit Protocol: What COMMIT Does, and the Two-Phase Commit pages 427 to 433
    16. 89 Concurrency Control: What Goes Wrong When Two Sessions Share Data pages 434 to 439
    17. 90 Concurrency Control: Isolation Levels in Oracle pages 440 to 444
    18. 91 Lock Management: Row Locks, Table Locks and SELECT FOR UPDATE pages 445 to 449
    19. 92 Read-Write Locks: Shared and Exclusive Locks, and LOCK TABLE pages 450 to 453
    20. 93 Deadlocks: How They Happen, ORA-00060 and How to Avoid Them pages 454 to 461
    21. 94 Crash Recovery: the Redo Log, Undo and Instance Recovery pages 462 to 468
    22. 95 Dynamic SQL: Native Dynamic SQL With EXECUTE IMMEDIATE pages 469 to 475
    23. 96 Native Dynamic SQL: Bind Variables, USING, INTO and OPEN FOR pages 476 to 481
    24. 97 The DBMS_SQL Package pages 482 to 487
    25. 98 SQL Injection: How It Happens and How to Stop It pages 488 to 491
    26. 99 Overview of Triggers: What a Trigger Is and When It Fires pages 492 to 498
    27. 100 Creating Triggers: CREATE OR REPLACE TRIGGER, Row and Statement Level pages 499 to 504
    28. 101 :NEW and :OLD, and the WHEN Clause pages 505 to 510
    29. 102 Insert Triggers pages 511 to 515
    30. 103 Delete Triggers pages 516 to 520
    31. 104 Update Triggers: UPDATE OF a Column, and INSERTING, UPDATING and DELETING pages 521 to 525
    32. 105 Nested Triggers: One Trigger Firing Another, and the Mutating Table pages 526 to 532
    33. 106 Viewing Triggers: USER_TRIGGERS and USER_SOURCE pages 533 to 536
    34. 107 Deleting and Modifying Triggers: DROP TRIGGER, CREATE OR REPLACE and ALTER TRIGGER pages 537 to 540
    35. 108 Enforcing Data Integrity Through Triggers pages 541 to 549
    36. 109 INSTEAD OF and System Triggers: the Other Kinds pages 550 to 555
    37. 110 Worked Programs: Triggers pages 556 to 562
    38. 111 What a Package Is, and Why You Need One pages 563 to 569
    39. 112 The Package Specification: What Others May Use pages 570 to 575
    40. 113 The Package Body: Public and Private Parts pages 576 to 583
    41. 114 Package Instantiation and Initialization: Package State pages 584 to 589
    42. 115 Creating Nested Table Columns: NESTED TABLE ... STORE AS pages 590 to 594
    43. 116 Working With Nested Table Columns: Query, Insert, Update and Delete pages 595 to 600
    44. 117 Worked Programs: Packages and Nested Tables pages 601 to 606

    Module J The journal, the practical examination and the viva 5 chapters

    1. 118 The Certified Journal: How to Write Up Each Practical pages 607 to 614
    2. 119 Practice Questions for Q.1: Module 1 Programs pages 615 to 623
    3. 120 Practice Questions for Q.2: Module 2 Programs pages 624 to 634
    4. 121 The Viva: Questions and Answers pages 635 to 657
    5. 122 When It Does Not Work: the Errors You Will Meet pages 658 to 664
  2. Design and Analysis of Algorithms

    Official Notes munotes.in

    Design and Analysis of Algorithms

    B.SC. (COMPUTER SCIENCE) · SEMESTER 2

    Strictly as per the University of Mumbai NEP syllabus in force for B.Sc. (Computer Science)

    For B.Sc. (Computer Science) students of the University of Mumbai and all its affiliated colleges

    munotes.in First Year

    Design and Analysis of Algorithms

    Copyright © 2026 munotes.in. All rights reserved.

    Written and first published by munotes.in, 2026.

    This book is for individual students to read at munotes.in. No part of it may be reproduced, distributed, stored, translated or used for institutional or classroom purposes in any form without a prior written licence from munotes.in.

    Licensing and permissions: contact@munotes.in

    The text of statutes and of judgments reproduced in this book is in the public domain under section 52(1)(q) of the Copyright Act 1957. The commentary, arrangement, examples and questions are the original work of munotes.in.

    munotes.in is an independent study resource for MU students. It is not affiliated with, endorsed by, or officially connected to the University of Mumbai. Course names and university references describe the students and syllabus the material relates to.

    munotes.in

    Contents

    Module I Algorithms and their analysis, data structures, recursion, and the basic sorting techniques

    1. What an Algorithm Is: Definition, Characteristics and Advantages 1
    2. Writing an Algorithm: Steps, Pseudocode and Flowcharts 9
    3. The Analysis of an Algorithm and Its Stages 19
    4. Types of Complexity: Time and Space 26
    5. Running Time Analysis: Counting Basic Operations 35
    6. How to Compare Algorithms 44
    7. Rate of Growth: The Common Growth Functions 53
    8. Types of Analysis: Best, Worst and Average Case 61
    9. Asymptotic Notation: Why Large n Decides 70
    10. Big-O Notation: The Upper Bound 78
    11. Calculating the Big-O of an Algorithm 87
    12. Omega Notation: The Lower Bound 96
    13. Theta Notation: The Tight Bound 103
    14. Asymptotic Analysis of an Algorithm 112
    15. Recurrence Relations: The Running Time of a Recursive Algorithm 121
    16. Performance Characteristics of Algorithms 131
    17. Estimating Running Time on Paper: The Step Count Method 141
    18. The Idea of Computability 150
    19. What a Data Structure Is 159
    munotes.in

    Contents continued

    Module I continued Algorithms and their analysis, data structures, recursion, and the basic sorting techniques

    1. Types of Data Structures 167
    2. The Queue: A First-In, First-Out Structure 176
    3. Trees and Graphs: The Non-Linear Structures and Their Traversal 185
    4. One-Dimensional Arrays 195
    5. Two-Dimensional Arrays 206
    6. The Stack: Last In, First Out 218
    7. A List-Based Stack in Python 228
    8. Python's List as a Data Structure 238
    9. The Singly Linked List 247
    10. Doubly and Circular Linked Lists 257
    11. Arrays, Stacks and Lists: Advantages, Disadvantages and Applications 267
    12. Solving Linear Equations with a Two-Dimensional Array 275
    13. Polynomial Representation 285
    14. Infix, Prefix and Postfix Expressions 297
    15. Infix-to-Postfix Conversion Using a Stack 308
    16. Evaluating a Postfix Expression 316
    17. What Recursion Is: The Base Case and the Recursive Case 326
    18. How Recursion Runs: The Call Stack and the Kinds of Recursion 335
    munotes.in

    Contents continued

    Module I continued Algorithms and their analysis, data structures, recursion, and the basic sorting techniques

    1. Recursion Versus Iteration 344
    2. The Factorial of a Number: Recursive and Iterative 352
    3. The Fibonacci Series: Recursive and Iterative 362
    4. Recursive and Iterative Versions Compared 372
    5. The Tower of Hanoi Problem 381
    6. Sorting and Its Types 393
    7. Bubble Sort 401
    8. Selection Sort 411
    9. Insertion Sort 420
    10. Bubble, Selection and Insertion Sort Compared 431

    Module II Searching, algorithm design techniques, dynamic programming and backtracking

    1. Searching and Its Kinds 439
    2. Linear Search and Its Types 447
    3. Binary Search 458
    4. Recursive Binary Search and Its Analysis 468
    5. Linear Search and Binary Search Compared 480
    6. The Selection Problem, and Selection by Sorting 488
    7. Partitioning a List: Lomuto and Hoare 498
    8. Partition-Based Selection: Quickselect 508
    munotes.in

    Contents continued

    Module II continued Searching, algorithm design techniques, dynamic programming and backtracking

    1. Finding the K Smallest Elements in Sorted Order 518
    2. The Nth Maximum and Minimum Element of a List 529
    3. Selection Techniques Compared 539
    4. Strings, and Comparing Two Strings 548
    5. The Pattern Matching Problem 556
    6. The Brute Force Method of Pattern Matching 564
    7. The Rabin-Karp Algorithm 575
    8. The Knuth-Morris-Pratt Algorithm 584
    9. Pattern Matching Methods Compared 593
    10. Classifying Algorithms, and the Criteria of a Good Design 601
    11. The Design Techniques at a Glance 610
    12. The Greedy Technique: Concept, Advantages and Disadvantages 619
    13. Greedy Applications, and Activity Selection 629
    14. The Coin Change Problem by the Greedy Method 639
    15. The Fractional Knapsack Problem 649
    16. The File Merging Problem: The Optimal Merge Pattern 658
    17. Divide and Conquer: Concept, Advantages and Disadvantages 669
    18. Divide and Conquer Applications: Finding the Maximum and Minimum 678
    19. Quick Sort 687
    munotes.in

    Contents continued

    Module II continued Searching, algorithm design techniques, dynamic programming and backtracking

    1. Merge Sort 696
    2. Multiplying Matrices: The Standard Method and Divide and Conquer 708
    3. Strassen's Matrix Multiplication 718
    4. Dynamic Programming: Concept, Advantages and Disadvantages 731
    5. Dynamic Programming Versus Greedy and Divide and Conquer 740
    6. Dynamic Programming Applications, and the Minimum Coins Problem 747
    7. The 0/1 Knapsack Problem 755
    8. The Fibonacci Series by Dynamic Programming 762
    9. The Factorial of a Number by Dynamic Programming 770
    10. The Longest Common Subsequence: The Problem and Its Recurrence 776
    11. The Longest Common Subsequence: The Table and the Program 783
    12. Backtracking: Concept, Advantages and Disadvantages 795
    13. Backtracking Applications: The Sum of Subsets 805
    14. The N-Queen Problem 814
    15. Sitting the Paper: Thirty Marks in One Hour 823
    munotes.in

    Page 1 onwards

    munotes.in

    832 pages in this book. The cover and the contents are above. Everything from page one is in the pass.

    Notes
    2026 Edition, as per the latest syllabus. 832 pages.
    Papers
    Previous year question paper solutions. Revised edition 2026. 2022, 2023, 2024, 2025, 2026
    Every chapter in the notes: 89 chapters across 2 modules

    Module I Algorithms and their analysis, data structures, recursion, and the basic sorting techniques 47 chapters

    1. 1 What an Algorithm Is: Definition, Characteristics and Advantages pages 1 to 8
    2. 2 Writing an Algorithm: Steps, Pseudocode and Flowcharts pages 9 to 18
    3. 3 The Analysis of an Algorithm and Its Stages pages 19 to 25
    4. 4 Types of Complexity: Time and Space pages 26 to 34
    5. 5 Running Time Analysis: Counting Basic Operations pages 35 to 43
    6. 6 How to Compare Algorithms pages 44 to 52
    7. 7 Rate of Growth: The Common Growth Functions pages 53 to 60
    8. 8 Types of Analysis: Best, Worst and Average Case pages 61 to 69
    9. 9 Asymptotic Notation: Why Large n Decides pages 70 to 77
    10. 10 Big-O Notation: The Upper Bound pages 78 to 86
    11. 11 Calculating the Big-O of an Algorithm pages 87 to 95
    12. 12 Omega Notation: The Lower Bound pages 96 to 102
    13. 13 Theta Notation: The Tight Bound pages 103 to 111
    14. 14 Asymptotic Analysis of an Algorithm pages 112 to 120
    15. 15 Recurrence Relations: The Running Time of a Recursive Algorithm pages 121 to 130
    16. 16 Performance Characteristics of Algorithms pages 131 to 140
    17. 17 Estimating Running Time on Paper: The Step Count Method pages 141 to 149
    18. 18 The Idea of Computability pages 150 to 158
    19. 19 What a Data Structure Is pages 159 to 166
    20. 20 Types of Data Structures pages 167 to 175
    21. 21 The Queue: A First-In, First-Out Structure pages 176 to 184
    22. 22 Trees and Graphs: The Non-Linear Structures and Their Traversal pages 185 to 194
    23. 23 One-Dimensional Arrays pages 195 to 205
    24. 24 Two-Dimensional Arrays pages 206 to 217
    25. 25 The Stack: Last In, First Out pages 218 to 227
    26. 26 A List-Based Stack in Python pages 228 to 237
    27. 27 Python's List as a Data Structure pages 238 to 246
    28. 28 The Singly Linked List pages 247 to 256
    29. 29 Doubly and Circular Linked Lists pages 257 to 266
    30. 30 Arrays, Stacks and Lists: Advantages, Disadvantages and Applications pages 267 to 274
    31. 31 Solving Linear Equations with a Two-Dimensional Array pages 275 to 284
    32. 32 Polynomial Representation pages 285 to 296
    33. 33 Infix, Prefix and Postfix Expressions pages 297 to 307
    34. 34 Infix-to-Postfix Conversion Using a Stack pages 308 to 315
    35. 35 Evaluating a Postfix Expression pages 316 to 325
    36. 36 What Recursion Is: The Base Case and the Recursive Case pages 326 to 334
    37. 37 How Recursion Runs: The Call Stack and the Kinds of Recursion pages 335 to 343
    38. 38 Recursion Versus Iteration pages 344 to 351
    39. 39 The Factorial of a Number: Recursive and Iterative pages 352 to 361
    40. 40 The Fibonacci Series: Recursive and Iterative pages 362 to 371
    41. 41 Recursive and Iterative Versions Compared pages 372 to 380
    42. 42 The Tower of Hanoi Problem pages 381 to 392
    43. 43 Sorting and Its Types pages 393 to 400
    44. 44 Bubble Sort pages 401 to 410
    45. 45 Selection Sort pages 411 to 419
    46. 46 Insertion Sort pages 420 to 430
    47. 47 Bubble, Selection and Insertion Sort Compared pages 431 to 438

    Module II Searching, algorithm design techniques, dynamic programming and backtracking 42 chapters

    1. 48 Searching and Its Kinds pages 439 to 446
    2. 49 Linear Search and Its Types pages 447 to 457
    3. 50 Binary Search pages 458 to 467
    4. 51 Recursive Binary Search and Its Analysis pages 468 to 479
    5. 52 Linear Search and Binary Search Compared pages 480 to 487
    6. 53 The Selection Problem, and Selection by Sorting pages 488 to 497
    7. 54 Partitioning a List: Lomuto and Hoare pages 498 to 507
    8. 55 Partition-Based Selection: Quickselect pages 508 to 517
    9. 56 Finding the K Smallest Elements in Sorted Order pages 518 to 528
    10. 57 The Nth Maximum and Minimum Element of a List pages 529 to 538
    11. 58 Selection Techniques Compared pages 539 to 547
    12. 59 Strings, and Comparing Two Strings pages 548 to 555
    13. 60 The Pattern Matching Problem pages 556 to 563
    14. 61 The Brute Force Method of Pattern Matching pages 564 to 574
    15. 62 The Rabin-Karp Algorithm pages 575 to 583
    16. 63 The Knuth-Morris-Pratt Algorithm pages 584 to 592
    17. 64 Pattern Matching Methods Compared pages 593 to 600
    18. 65 Classifying Algorithms, and the Criteria of a Good Design pages 601 to 609
    19. 66 The Design Techniques at a Glance pages 610 to 618
    20. 67 The Greedy Technique: Concept, Advantages and Disadvantages pages 619 to 628
    21. 68 Greedy Applications, and Activity Selection pages 629 to 638
    22. 69 The Coin Change Problem by the Greedy Method pages 639 to 648
    23. 70 The Fractional Knapsack Problem pages 649 to 657
    24. 71 The File Merging Problem: The Optimal Merge Pattern pages 658 to 668
    25. 72 Divide and Conquer: Concept, Advantages and Disadvantages pages 669 to 677
    26. 73 Divide and Conquer Applications: Finding the Maximum and Minimum pages 678 to 686
    27. 74 Quick Sort pages 687 to 695
    28. 75 Merge Sort pages 696 to 707
    29. 76 Multiplying Matrices: The Standard Method and Divide and Conquer pages 708 to 717
    30. 77 Strassen's Matrix Multiplication pages 718 to 730
    31. 78 Dynamic Programming: Concept, Advantages and Disadvantages pages 731 to 739
    32. 79 Dynamic Programming Versus Greedy and Divide and Conquer pages 740 to 746
    33. 80 Dynamic Programming Applications, and the Minimum Coins Problem pages 747 to 754
    34. 81 The 0/1 Knapsack Problem pages 755 to 761
    35. 82 The Fibonacci Series by Dynamic Programming pages 762 to 769
    36. 83 The Factorial of a Number by Dynamic Programming pages 770 to 775
    37. 84 The Longest Common Subsequence: The Problem and Its Recurrence pages 776 to 782
    38. 85 The Longest Common Subsequence: The Table and the Program pages 783 to 794
    39. 86 Backtracking: Concept, Advantages and Disadvantages pages 795 to 804
    40. 87 Backtracking Applications: The Sum of Subsets pages 805 to 813
    41. 88 The N-Queen Problem pages 814 to 822
    42. 89 Sitting the Paper: Thirty Marks in One Hour pages 823 to 832
    Every paper that is solved: 6 papers
    • Mar 2026
    • Apr 2025
    • Mar 2025
    • Apr 2024
    • 2022-23
    • May 2022
  3. Web Technologies

    Official Notes munotes.in

    Web Technologies

    B.SC. (COMPUTER SCIENCE) · SEMESTER 2

    Strictly as per the University of Mumbai NEP syllabus in force for B.Sc. (Computer Science)

    For B.Sc. (Computer Science) students of the University of Mumbai and all its affiliated colleges

    munotes.in First Year

    Web Technologies

    Copyright © 2026 munotes.in. All rights reserved.

    Written and first published by munotes.in, 2026.

    This book is for individual students to read at munotes.in. No part of it may be reproduced, distributed, stored, translated or used for institutional or classroom purposes in any form without a prior written licence from munotes.in.

    Licensing and permissions: contact@munotes.in

    The text of statutes and of judgments reproduced in this book is in the public domain under section 52(1)(q) of the Copyright Act 1957. The commentary, arrangement, examples and questions are the original work of munotes.in.

    munotes.in is an independent study resource for MU students. It is not affiliated with, endorsed by, or officially connected to the University of Mumbai. Course names and university references describe the students and syllabus the material relates to.

    munotes.in

    Contents

    Module I HTML, CSS and JavaScript

    1. How This Practical Is Examined: the Journal, the Slip and the Viva 1
    2. How the Web Works: the Browser, the Server, the URL and HTTP 6
    3. Client Side and Server Side, and the Laboratory: XAMPP, htdocs and localhost 14
    4. HTML from Zero: Tags, Elements and the Fundamental Elements of a Page 23
    5. Formatting Text in HTML 30
    6. Organizing Text in HTML: Paragraphs, Headings, Breaks and Sections 39
    7. List Tags: Ordered, Unordered and Description Lists 50
    8. Links and URLs in HTML 59
    9. Tables in HTML 68
    10. Images on a Web Page and Image Formats 78
    11. Image Maps 88
    12. Colors: Names, Hexadecimal, RGB and HSL 97
    13. Navigation Across Multiple Pages 108
    14. Forms in HTML: the Form Element, Labels, Text Boxes and Buttons 116
    15. Forms in HTML: Check Boxes, Radio Buttons, Lists and Text Areas 126
    16. Interactive Elements: details, summary and dialog 136
    17. Working with Multimedia: Audio and Video File Formats 146
    munotes.in

    Contents continued

    Module I continued HTML, CSS and JavaScript

    1. Inserting Audio and Video on a Web Page 155
    2. Valid, Well-Formed and Meaningful Pages 165
    3. CSS from Zero: Understanding the Syntax of CSS 175
    4. CSS Selectors 184
    5. Inserting CSS in an HTML Document: Inline, Internal and External 196
    6. CSS Properties for the Background of a Page 204
    7. CSS Properties for Fonts and Text Styles 214
    8. CSS Properties for Positioning an Element 223
    9. Devices, Viewports and Browsers: One Page on Every Screen 236
    10. Using JavaScript in an HTML Document 246
    11. Programming Fundamentals of JavaScript: Statements, Variables and Data Types 255
    12. JavaScript Operators 267
    13. Control Flow Statements: if, switch and the Loops 282
    14. Popup Boxes: alert, confirm and prompt 295
    15. Functions: Defining and Invoking, Arguments and the return Statement 303
    16. Calling Functions with a Timer: setTimeout and setInterval 315
    17. The String Object 325
    18. The RegExp Object 336
    munotes.in

    Contents continued

    Module I continued HTML, CSS and JavaScript

    1. The Math Object 346
    2. The Date Object 357
    3. The Window Object 367
    4. The Navigator Object 377
    5. The History and Location Objects 384
    6. The Document Object 395
    7. Cookies in JavaScript 404
    8. The Document Object Model: Finding, Changing and Adding Elements 413
    9. Form Validation Using JavaScript 424

    Module II XML, AJAX and PHP

    1. XML from Zero: Comparing XML with HTML, and Its Advantages and Disadvantages 435
    2. Structure of an XML Document: Prolog, Root, Elements and Attributes 443
    3. XML Entity References 452
    4. XML with an Internal DTD 461
    5. XML with an External DTD 472
    6. XSLT Elements and Attributes: template, value-of, for-each and sort 480
    munotes.in

    Contents continued

    Module II continued XML, AJAX and PHP

    1. XSLT Elements and Attributes: if, choose, attribute and element 491
    2. Designing Your Own Markup Language: Data-Centric and Document-Centric XML 504
    3. AJAX from Zero: the AJAX Web Application Model and How AJAX Works 516
    4. The XMLHttpRequest Object: Properties and Methods 526
    5. Handling Asynchronous Requests with AJAX: Mouseover and Button Click 537
    6. PHP from Zero: How a PHP Page Runs 546
    7. PHP Variables and Data Types 553
    8. PHP Operators 561
    9. Retrieving Data from HTML Forms: GET and POST 569
    10. Retrieving Check Boxes, Radio Buttons and Lists in PHP 577
    11. Program Flow in PHP: if, elseif, switch and match 585
    12. Program Flow in PHP: while, do-while, for and foreach 593
    13. Program Flow in PHP: Functions, include and require 601
    14. PHP Arrays: Indexed, Associative and Multidimensional 608
    15. PHP Array Functions: Sort, Search and More 614
    16. Working with Files in PHP: Open, Read, Write and Append 620
    17. Working with Directories in PHP 627
    munotes.in

    Contents continued

    Module II continued XML, AJAX and PHP

    1. MySQL from Zero: Databases, Tables and SQL 632
    2. Connecting PHP to MySQL with mysqli 638
    3. Inserting Rows from a Form with Prepared Statements 644
    4. Showing and Searching Rows in an HTML Table 652
    5. Updating and Deleting Rows from PHP 658
    6. AJAX with PHP and MySQL: Results as You Type 665
    7. Working with Cookies in PHP 671
    8. Sessions in PHP 677
    9. A Database Driven Website: Registration, Login and Logout 683
    10. Headers in PHP: Redirects, Content Types and Headers Already Sent 689

    Module J The journal, the practical examination and the viva

    1. The Journal: What Each Practical Write-Up Holds 694
    2. Module 1 Practical Questions, Worked 698
    3. Module 2 Practical Questions, Worked 704
    4. The Viva: Questions and Answers 710
    5. When It Does Not Work: the Errors You Will Meet 726
    munotes.in

    Page 1 onwards

    munotes.in

    735 pages in this book. The cover and the contents are above. Everything from page one is in the pass.

    Notes
    2026 Edition, as per the latest syllabus. 735 pages.
    Every chapter in the notes: 82 chapters across 3 modules

    Module I HTML, CSS and JavaScript 44 chapters

    1. 1 How This Practical Is Examined: the Journal, the Slip and the Viva pages 1 to 5
    2. 2 How the Web Works: the Browser, the Server, the URL and HTTP pages 6 to 13
    3. 3 Client Side and Server Side, and the Laboratory: XAMPP, htdocs and localhost pages 14 to 22
    4. 4 HTML from Zero: Tags, Elements and the Fundamental Elements of a Page pages 23 to 29
    5. 5 Formatting Text in HTML pages 30 to 38
    6. 6 Organizing Text in HTML: Paragraphs, Headings, Breaks and Sections pages 39 to 49
    7. 7 List Tags: Ordered, Unordered and Description Lists pages 50 to 58
    8. 8 Links and URLs in HTML pages 59 to 67
    9. 9 Tables in HTML pages 68 to 77
    10. 10 Images on a Web Page and Image Formats pages 78 to 87
    11. 11 Image Maps pages 88 to 96
    12. 12 Colors: Names, Hexadecimal, RGB and HSL pages 97 to 107
    13. 13 Navigation Across Multiple Pages pages 108 to 115
    14. 14 Forms in HTML: the Form Element, Labels, Text Boxes and Buttons pages 116 to 125
    15. 15 Forms in HTML: Check Boxes, Radio Buttons, Lists and Text Areas pages 126 to 135
    16. 16 Interactive Elements: details, summary and dialog pages 136 to 145
    17. 17 Working with Multimedia: Audio and Video File Formats pages 146 to 154
    18. 18 Inserting Audio and Video on a Web Page pages 155 to 164
    19. 19 Valid, Well-Formed and Meaningful Pages pages 165 to 174
    20. 20 CSS from Zero: Understanding the Syntax of CSS pages 175 to 183
    21. 21 CSS Selectors pages 184 to 195
    22. 22 Inserting CSS in an HTML Document: Inline, Internal and External pages 196 to 203
    23. 23 CSS Properties for the Background of a Page pages 204 to 213
    24. 24 CSS Properties for Fonts and Text Styles pages 214 to 222
    25. 25 CSS Properties for Positioning an Element pages 223 to 235
    26. 26 Devices, Viewports and Browsers: One Page on Every Screen pages 236 to 245
    27. 27 Using JavaScript in an HTML Document pages 246 to 254
    28. 28 Programming Fundamentals of JavaScript: Statements, Variables and Data Types pages 255 to 266
    29. 29 JavaScript Operators pages 267 to 281
    30. 30 Control Flow Statements: if, switch and the Loops pages 282 to 294
    31. 31 Popup Boxes: alert, confirm and prompt pages 295 to 302
    32. 32 Functions: Defining and Invoking, Arguments and the return Statement pages 303 to 314
    33. 33 Calling Functions with a Timer: setTimeout and setInterval pages 315 to 324
    34. 34 The String Object pages 325 to 335
    35. 35 The RegExp Object pages 336 to 345
    36. 36 The Math Object pages 346 to 356
    37. 37 The Date Object pages 357 to 366
    38. 38 The Window Object pages 367 to 376
    39. 39 The Navigator Object pages 377 to 383
    40. 40 The History and Location Objects pages 384 to 394
    41. 41 The Document Object pages 395 to 403
    42. 42 Cookies in JavaScript pages 404 to 412
    43. 43 The Document Object Model: Finding, Changing and Adding Elements pages 413 to 423
    44. 44 Form Validation Using JavaScript pages 424 to 434

    Module II XML, AJAX and PHP 33 chapters

    1. 45 XML from Zero: Comparing XML with HTML, and Its Advantages and Disadvantages pages 435 to 442
    2. 46 Structure of an XML Document: Prolog, Root, Elements and Attributes pages 443 to 451
    3. 47 XML Entity References pages 452 to 460
    4. 48 XML with an Internal DTD pages 461 to 471
    5. 49 XML with an External DTD pages 472 to 479
    6. 50 XSLT Elements and Attributes: template, value-of, for-each and sort pages 480 to 490
    7. 51 XSLT Elements and Attributes: if, choose, attribute and element pages 491 to 503
    8. 52 Designing Your Own Markup Language: Data-Centric and Document-Centric XML pages 504 to 515
    9. 53 AJAX from Zero: the AJAX Web Application Model and How AJAX Works pages 516 to 525
    10. 54 The XMLHttpRequest Object: Properties and Methods pages 526 to 536
    11. 55 Handling Asynchronous Requests with AJAX: Mouseover and Button Click pages 537 to 545
    12. 56 PHP from Zero: How a PHP Page Runs pages 546 to 552
    13. 57 PHP Variables and Data Types pages 553 to 560
    14. 58 PHP Operators pages 561 to 568
    15. 59 Retrieving Data from HTML Forms: GET and POST pages 569 to 576
    16. 60 Retrieving Check Boxes, Radio Buttons and Lists in PHP pages 577 to 584
    17. 61 Program Flow in PHP: if, elseif, switch and match pages 585 to 592
    18. 62 Program Flow in PHP: while, do-while, for and foreach pages 593 to 600
    19. 63 Program Flow in PHP: Functions, include and require pages 601 to 607
    20. 64 PHP Arrays: Indexed, Associative and Multidimensional pages 608 to 613
    21. 65 PHP Array Functions: Sort, Search and More pages 614 to 619
    22. 66 Working with Files in PHP: Open, Read, Write and Append pages 620 to 626
    23. 67 Working with Directories in PHP pages 627 to 631
    24. 68 MySQL from Zero: Databases, Tables and SQL pages 632 to 637
    25. 69 Connecting PHP to MySQL with mysqli pages 638 to 643
    26. 70 Inserting Rows from a Form with Prepared Statements pages 644 to 651
    27. 71 Showing and Searching Rows in an HTML Table pages 652 to 657
    28. 72 Updating and Deleting Rows from PHP pages 658 to 664
    29. 73 AJAX with PHP and MySQL: Results as You Type pages 665 to 670
    30. 74 Working with Cookies in PHP pages 671 to 676
    31. 75 Sessions in PHP pages 677 to 682
    32. 76 A Database Driven Website: Registration, Login and Logout pages 683 to 688
    33. 77 Headers in PHP: Redirects, Content Types and Headers Already Sent pages 689 to 693

    Module J The journal, the practical examination and the viva 5 chapters

    1. 78 The Journal: What Each Practical Write-Up Holds pages 694 to 697
    2. 79 Module 1 Practical Questions, Worked pages 698 to 703
    3. 80 Module 2 Practical Questions, Worked pages 704 to 709
    4. 81 The Viva: Questions and Answers pages 710 to 725
    5. 82 When It Does Not Work: the Errors You Will Meet pages 726 to 735
  4. Advanced Python Programming

    Official Notes munotes.in

    Advanced Python Programming

    B.SC. (COMPUTER SCIENCE) · SEMESTER 2

    Strictly as per the University of Mumbai NEP syllabus in force for B.Sc. (Computer Science)

    For B.Sc. (Computer Science) students of the University of Mumbai and all its affiliated colleges

    munotes.in First Year

    Advanced Python Programming

    Copyright © 2026 munotes.in. All rights reserved.

    Written and first published by munotes.in, 2026.

    This book is for individual students to read at munotes.in. No part of it may be reproduced, distributed, stored, translated or used for institutional or classroom purposes in any form without a prior written licence from munotes.in.

    Licensing and permissions: contact@munotes.in

    The text of statutes and of judgments reproduced in this book is in the public domain under section 52(1)(q) of the Copyright Act 1957. The commentary, arrangement, examples and questions are the original work of munotes.in.

    munotes.in is an independent study resource for MU students. It is not affiliated with, endorsed by, or officially connected to the University of Mumbai. Course names and university references describe the students and syllabus the material relates to.

    munotes.in

    Contents

    Module I OOP in Python, classes and objects, inheritance and polymorphism, abstract classes and interfaces, and threads

    1. How This Practical Is Examined: the Journal, the Slip and the Viva 1
    2. Introduction to OOPs: Objects and Classes 4
    3. Problems in the Procedure Oriented Approach 8
    4. Features of the Object Oriented Programming System (OOPS) 12
    5. Constructors and Destructors 16
    6. Classes and Objects: Creating a Class 20
    7. The Self Variable 24
    8. Types of Variables: Instance Variables and Class Variables 27
    9. Types of Methods: Instance Methods, Class Methods and Static Methods 32
    10. Passing Members of One Class to Another Class 37
    11. Inheritance: Building a Class on Another 42
    12. Types of Inheritance 47
    13. Constructors in Inheritance 52
    14. Overriding Super Class Constructors and Methods 56
    15. The super() Method 60
    16. Polymorphism 64
    17. Duck Typing 68
    18. Operator Overloading 72
    19. Method Overloading 77
    munotes.in

    Contents continued

    Module I continued OOP in Python, classes and objects, inheritance and polymorphism, abstract classes and interfaces, and threads

    1. Method Overriding 82
    2. Abstract Classes and Abstract Methods 86
    3. Interfaces in Python 90
    4. Single Tasking and Multitasking: Processes and Threads 94
    5. Creating Threads in Python 99
    6. Thread Synchronisation: Locks and Semaphores 107
    7. Communication Between Threads: Condition, Event and Queue 115
    8. Deadlock in Threads 122
    9. Decorators 128
    10. Generators 135
    11. Metaclasses 142
    12. Asynchronous Programming: async, await and asyncio 148

    Module II Working with databases, exceptions, networking, the graphical user interface and data science tools

    1. Working with Databases: DBMS and MySQL 154
    2. Retrieving Rows from a MySQL Table 162
    3. Inserting Rows into a MySQL Table 169
    4. Deleting Rows from a MySQL Table 176
    5. Updating Rows in a MySQL Table 181
    6. Creating Database Tables through Python 187
    munotes.in

    Contents continued

    Module II continued Working with databases, exceptions, networking, the graphical user interface and data science tools

    1. Errors in a Python Program 193
    2. Exceptions and Exception Handling 199
    3. User Defined Exceptions 208
    4. Logging Exceptions 213
    5. Networking: the TCP/IP Protocol Architecture 220
    6. User Datagram Protocol (UDP) 228
    7. FTP Architecture 234
    8. Web Page Operations 243
    9. Sending a Simple Mail 250
    10. Creating a GUI in Python: tkinter and the Root Window 257
    11. Widget Classes: Label, Button, Entry and Text 263
    12. Widget Classes: Check Buttons, Radio Buttons, List Boxes and More 269
    13. Layout Managers: pack, grid and place 276
    14. Event Handling 283
    15. Data Science Tools: Introduction to NumPy 290
    16. Matplotlib: Drawing Charts from Data 297
    17. pandas: Series and DataFrames 304
    18. pandas: Reading, Cleaning and Grouping Data 312
    19. SciPy: Scientific Computing with Python 319
    munotes.in

    Contents continued

    Module J The journal, the practical examination and the viva

    1. The Certified Journal: What Goes in It 327
    2. The Viva: Questions and Answers 333
    3. Practice Questions for Q.1: Module 1 346
    4. Practice Questions for Q.2: Module 2 355
    munotes.in

    Page 1 onwards

    munotes.in

    365 pages in this book. The cover and the contents are above. Everything from page one is in the pass.

    Notes
    2026 Edition, as per the latest syllabus. 365 pages.
    Papers
    Previous year question paper solutions. Revised edition 2026. 2022, 2023, 2024
    Every chapter in the notes: 60 chapters across 3 modules

    Module I OOP in Python, classes and objects, inheritance and polymorphism, abstract classes and interfaces, and threads 31 chapters

    1. 1 How This Practical Is Examined: the Journal, the Slip and the Viva pages 1 to 3
    2. 2 Introduction to OOPs: Objects and Classes pages 4 to 7
    3. 3 Problems in the Procedure Oriented Approach pages 8 to 11
    4. 4 Features of the Object Oriented Programming System (OOPS) pages 12 to 15
    5. 5 Constructors and Destructors pages 16 to 19
    6. 6 Classes and Objects: Creating a Class pages 20 to 23
    7. 7 The Self Variable pages 24 to 26
    8. 8 Types of Variables: Instance Variables and Class Variables pages 27 to 31
    9. 9 Types of Methods: Instance Methods, Class Methods and Static Methods pages 32 to 36
    10. 10 Passing Members of One Class to Another Class pages 37 to 41
    11. 11 Inheritance: Building a Class on Another pages 42 to 46
    12. 12 Types of Inheritance pages 47 to 51
    13. 13 Constructors in Inheritance pages 52 to 55
    14. 14 Overriding Super Class Constructors and Methods pages 56 to 59
    15. 15 The super() Method pages 60 to 63
    16. 16 Polymorphism pages 64 to 67
    17. 17 Duck Typing pages 68 to 71
    18. 18 Operator Overloading pages 72 to 76
    19. 19 Method Overloading pages 77 to 81
    20. 20 Method Overriding pages 82 to 85
    21. 21 Abstract Classes and Abstract Methods pages 86 to 89
    22. 22 Interfaces in Python pages 90 to 93
    23. 23 Single Tasking and Multitasking: Processes and Threads pages 94 to 98
    24. 24 Creating Threads in Python pages 99 to 106
    25. 25 Thread Synchronisation: Locks and Semaphores pages 107 to 114
    26. 26 Communication Between Threads: Condition, Event and Queue pages 115 to 121
    27. 27 Deadlock in Threads pages 122 to 127
    28. 28 Decorators pages 128 to 134
    29. 29 Generators pages 135 to 141
    30. 30 Metaclasses pages 142 to 147
    31. 31 Asynchronous Programming: async, await and asyncio pages 148 to 153

    Module II Working with databases, exceptions, networking, the graphical user interface and data science tools 25 chapters

    1. 32 Working with Databases: DBMS and MySQL pages 154 to 161
    2. 33 Retrieving Rows from a MySQL Table pages 162 to 168
    3. 34 Inserting Rows into a MySQL Table pages 169 to 175
    4. 35 Deleting Rows from a MySQL Table pages 176 to 180
    5. 36 Updating Rows in a MySQL Table pages 181 to 186
    6. 37 Creating Database Tables through Python pages 187 to 192
    7. 38 Errors in a Python Program pages 193 to 198
    8. 39 Exceptions and Exception Handling pages 199 to 207
    9. 40 User Defined Exceptions pages 208 to 212
    10. 41 Logging Exceptions pages 213 to 219
    11. 42 Networking: the TCP/IP Protocol Architecture pages 220 to 227
    12. 43 User Datagram Protocol (UDP) pages 228 to 233
    13. 44 FTP Architecture pages 234 to 242
    14. 45 Web Page Operations pages 243 to 249
    15. 46 Sending a Simple Mail pages 250 to 256
    16. 47 Creating a GUI in Python: tkinter and the Root Window pages 257 to 262
    17. 48 Widget Classes: Label, Button, Entry and Text pages 263 to 268
    18. 49 Widget Classes: Check Buttons, Radio Buttons, List Boxes and More pages 269 to 275
    19. 50 Layout Managers: pack, grid and place pages 276 to 282
    20. 51 Event Handling pages 283 to 289
    21. 52 Data Science Tools: Introduction to NumPy pages 290 to 296
    22. 53 Matplotlib: Drawing Charts from Data pages 297 to 303
    23. 54 pandas: Series and DataFrames pages 304 to 311
    24. 55 pandas: Reading, Cleaning and Grouping Data pages 312 to 318
    25. 56 SciPy: Scientific Computing with Python pages 319 to 326

    Module J The journal, the practical examination and the viva 4 chapters

    1. 57 The Certified Journal: What Goes in It pages 327 to 332
    2. 58 The Viva: Questions and Answers pages 333 to 345
    3. 59 Practice Questions for Q.1: Module 1 pages 346 to 354
    4. 60 Practice Questions for Q.2: Module 2 pages 355 to 365
    Every paper that is solved: 4 papers
    • Apr 2024
    • 2022-23
    • Oct 2023
    • May 2022
  5. Introduction to OOP using C++

    Official Notes munotes.in

    Introduction to OOP using C++

    B.SC. (COMPUTER SCIENCE) · SEMESTER 2

    Strictly as per the University of Mumbai NEP syllabus in force for B.Sc. (Computer Science)

    For B.Sc. (Computer Science) students of the University of Mumbai and all its affiliated colleges

    munotes.in First Year

    Introduction to OOP using C++

    Copyright © 2026 munotes.in. All rights reserved.

    Written and first published by munotes.in, 2026.

    This book is for individual students to read at munotes.in. No part of it may be reproduced, distributed, stored, translated or used for institutional or classroom purposes in any form without a prior written licence from munotes.in.

    Licensing and permissions: contact@munotes.in

    The text of statutes and of judgments reproduced in this book is in the public domain under section 52(1)(q) of the Copyright Act 1957. The commentary, arrangement, examples and questions are the original work of munotes.in.

    munotes.in is an independent study resource for MU students. It is not affiliated with, endorsed by, or officially connected to the University of Mumbai. Course names and university references describe the students and syllabus the material relates to.

    munotes.in

    Contents

    Module I OOP concepts, C++ basics, UML, classes, constructors and destructors, and working with objects

    1. The Object Oriented Paradigm and the Basic Concepts of OOP 1
    2. Benefits of OOP, Object Oriented Languages and Applications of OOP 8
    3. Tokens in C++: Keywords, Identifiers and Constants 15
    4. Features of C++, the Structure of a C++ Program, and Compiling and Running It 22
    5. Basic Data Types, Variables, the Rules for Naming Them, and Constants 29
    6. Type Casting: the Cast Operator, and Implicit and Explicit Conversion 37
    7. Input and Output with cin and cout 44
    8. Operators and Their Precedence 51
    9. Decision Making: if, if...else and switch 59
    10. Loops: while, do...while and for 66
    11. Arrays and Strings, and String Manipulation 73
    12. UML and the Class Diagram 80
    13. Classes and Objects: Data Members, Member Functions and the Dot Operator 88
    14. Defining Member Functions outside the Class, and Inline Functions 95
    15. Abstraction and Encapsulation in a Class 102
    16. Passing Data to Functions: by Value, by Reference, and Objects as Arguments 109
    munotes.in

    Contents continued

    Module I continued OOP concepts, C++ basics, UML, classes, constructors and destructors, and working with objects

    1. Scope and Visibility of Variables, and the Scope Resolution Operator 116
    2. Constructors: the Default Constructor and the Parameterized Constructor 123
    3. The Copy Constructor and the Private Constructor 130
    4. Destructors 137
    5. Accessor and Mutator Methods 144
    6. Static Data Members and Static Member Functions 151
    7. Access Specifiers: private, public and protected 157
    8. Arrays of Objects, and Arrays inside a Class 164

    Module II Polymorphism, relationships, inheritance, pointers, file handling and real life applications

    1. Compile Time Polymorphism: Static Binding, Function Overloading and Constructor Overloading 171
    2. Operator Overloading: Unary Operators 177
    3. Operator Overloading: Binary Operators 184
    4. Association, Aggregation and Composition in Class Diagrams 193
    5. Inheritance: a Base Class and Its Derived Class 200
    6. Types of Inheritance: Single, Multiple, Hierarchical, Multilevel and Hybrid 207
    7. Friend Functions and Friend Classes 215
    8. Constructors in Derived Classes 222
    munotes.in

    Contents continued

    Module II continued Polymorphism, relationships, inheritance, pointers, file handling and real life applications

    1. Generalization and Specialization 228
    2. Run Time Polymorphism: Dynamic Binding and Function Overriding 235
    3. Virtual Functions and Pure Virtual Functions 242
    4. The Virtual Base Class 250
    5. Abstract Classes 257
    6. Pointers: the * and & Operators 264
    7. Pointers to Objects and the this Pointer 272
    8. Pointers to Derived Classes 278
    9. Dynamic Memory: new and delete in a Class 285
    10. File Stream Classes, Opening and Closing a File, and File Opening Modes 292
    11. Text File Handling 300
    12. Binary File Handling 307
    13. A Case Study: Library Management 315
    14. A Case Study: Order Management 323
    munotes.in

    Page 1 onwards

    munotes.in

    330 pages in this book. The cover and the contents are above. Everything from page one is in the pass.

    Notes
    2026 Edition, as per the latest syllabus. 330 pages.
    Papers
    Previous year question paper solutions. Revised edition 2026. 2023, 2024, 2025, 2026
    Every chapter in the notes: 46 chapters across 2 modules

    Module I OOP concepts, C++ basics, UML, classes, constructors and destructors, and working with objects 24 chapters

    1. 1 The Object Oriented Paradigm and the Basic Concepts of OOP pages 1 to 7
    2. 2 Benefits of OOP, Object Oriented Languages and Applications of OOP pages 8 to 14
    3. 3 Tokens in C++: Keywords, Identifiers and Constants pages 15 to 21
    4. 4 Features of C++, the Structure of a C++ Program, and Compiling and Running It pages 22 to 28
    5. 5 Basic Data Types, Variables, the Rules for Naming Them, and Constants pages 29 to 36
    6. 6 Type Casting: the Cast Operator, and Implicit and Explicit Conversion pages 37 to 43
    7. 7 Input and Output with cin and cout pages 44 to 50
    8. 8 Operators and Their Precedence pages 51 to 58
    9. 9 Decision Making: if, if...else and switch pages 59 to 65
    10. 10 Loops: while, do...while and for pages 66 to 72
    11. 11 Arrays and Strings, and String Manipulation pages 73 to 79
    12. 12 UML and the Class Diagram pages 80 to 87
    13. 13 Classes and Objects: Data Members, Member Functions and the Dot Operator pages 88 to 94
    14. 14 Defining Member Functions outside the Class, and Inline Functions pages 95 to 101
    15. 15 Abstraction and Encapsulation in a Class pages 102 to 108
    16. 16 Passing Data to Functions: by Value, by Reference, and Objects as Arguments pages 109 to 115
    17. 17 Scope and Visibility of Variables, and the Scope Resolution Operator pages 116 to 122
    18. 18 Constructors: the Default Constructor and the Parameterized Constructor pages 123 to 129
    19. 19 The Copy Constructor and the Private Constructor pages 130 to 136
    20. 20 Destructors pages 137 to 143
    21. 21 Accessor and Mutator Methods pages 144 to 150
    22. 22 Static Data Members and Static Member Functions pages 151 to 156
    23. 23 Access Specifiers: private, public and protected pages 157 to 163
    24. 24 Arrays of Objects, and Arrays inside a Class pages 164 to 170

    Module II Polymorphism, relationships, inheritance, pointers, file handling and real life applications 22 chapters

    1. 25 Compile Time Polymorphism: Static Binding, Function Overloading and Constructor Overloading pages 171 to 176
    2. 26 Operator Overloading: Unary Operators pages 177 to 183
    3. 27 Operator Overloading: Binary Operators pages 184 to 192
    4. 28 Association, Aggregation and Composition in Class Diagrams pages 193 to 199
    5. 29 Inheritance: a Base Class and Its Derived Class pages 200 to 206
    6. 30 Types of Inheritance: Single, Multiple, Hierarchical, Multilevel and Hybrid pages 207 to 214
    7. 31 Friend Functions and Friend Classes pages 215 to 221
    8. 32 Constructors in Derived Classes pages 222 to 227
    9. 33 Generalization and Specialization pages 228 to 234
    10. 34 Run Time Polymorphism: Dynamic Binding and Function Overriding pages 235 to 241
    11. 35 Virtual Functions and Pure Virtual Functions pages 242 to 249
    12. 36 The Virtual Base Class pages 250 to 256
    13. 37 Abstract Classes pages 257 to 263
    14. 38 Pointers: the * and & Operators pages 264 to 271
    15. 39 Pointers to Objects and the this Pointer pages 272 to 277
    16. 40 Pointers to Derived Classes pages 278 to 284
    17. 41 Dynamic Memory: new and delete in a Class pages 285 to 291
    18. 42 File Stream Classes, Opening and Closing a File, and File Opening Modes pages 292 to 299
    19. 43 Text File Handling pages 300 to 306
    20. 44 Binary File Handling pages 307 to 314
    21. 45 A Case Study: Library Management pages 315 to 322
    22. 46 A Case Study: Order Management pages 323 to 330
    Every paper that is solved: 5 papers
    • Mar 2026
    • Apr 2025
    • Mar 2025
    • Apr 2024
    • 2022-23
  6. Computer Science Practical 2

    Official Notes munotes.in

    Computer Science Practical 2

    B.SC. (COMPUTER SCIENCE) · SEMESTER 2

    Strictly as per the University of Mumbai NEP syllabus in force for B.Sc. (Computer Science)

    For B.Sc. (Computer Science) students of the University of Mumbai and all its affiliated colleges

    munotes.in First Year

    Computer Science Practical 2

    Copyright © 2026 munotes.in. All rights reserved.

    Written and first published by munotes.in, 2026.

    This book is for individual students to read at munotes.in. No part of it may be reproduced, distributed, stored, translated or used for institutional or classroom purposes in any form without a prior written licence from munotes.in.

    Licensing and permissions: contact@munotes.in

    The text of statutes and of judgments reproduced in this book is in the public domain under section 52(1)(q) of the Copyright Act 1957. The commentary, arrangement, examples and questions are the original work of munotes.in.

    munotes.in is an independent study resource for MU students. It is not affiliated with, endorsed by, or officially connected to the University of Mumbai. Course names and university references describe the students and syllabus the material relates to.

    munotes.in

    Contents

    Module I Design and Analysis of Algorithms practicals: arrays, stacks, searching, sorting, pattern matching, recursion, greedy, divide and conquer, and dynamic programming

    1. How This Practical Is Examined: Twenty Exercises, the Journal and the Viva 1
    2. The Python Laboratory from Zero: Running a Program, Saving Its Output and Counting Its Steps 8
    3. Practical 1: Programs for One-Dimensional Arrays 16
    4. Practical 1 continued: Programs for Two-Dimensional Arrays 28
    5. Practical 2: A List-Based Stack and Its Operations 40
    6. Practical 3: Linear Search and Binary Search on a List 49
    7. Practical 4: Bubble Sort and Selection Sort 61
    8. Practical 4 continued: Insertion Sort, and the Three Sorts Compared 71
    9. Practical 5: the Nth Maximum and Nth Minimum Element of a List 79
    10. Practical 6: Finding a Pattern in a String by Brute Force 88
    11. Practical 6 continued: Faster Pattern Matching with Rabin-Karp and Knuth-Morris-Pratt 95
    12. Practical 7: Recursive Factorial, Fibonacci and the Tower of Hanoi 105
    13. Practical 8: the File Merging Problem by the Greedy Method 113
    14. Practical 8 continued: Coin Change by the Greedy Method 120
    15. Practical 9: Merge Sort by Divide and Conquer 127
    16. Practical 9 continued: Strassen's Matrix Multiplication 134
    17. Practical 10: the Fibonacci Series by Dynamic Programming 142
    munotes.in

    Contents continued

    Module I continued Design and Analysis of Algorithms practicals: arrays, stacks, searching, sorting, pattern matching, recursion, greedy, divide and conquer, and dynamic programming

    1. Practical 10 continued: the Longest Common Subsequence 148

    Module II OOPs using C++ practicals: classes, scope resolution, constructors and destructors, access specifiers, inheritance, overloading and overriding, pointers and files

    1. C++ from Zero: Installing g++, Compiling and Running Your First Program 156
    2. Practical 11: a Simple Class, Its Objects, Data Members and Member Functions 165
    3. Practical 12: Branching and Looping inside Class Methods 173
    4. Practical 13: One and Two-Dimensional Arrays in a Class 182
    5. Practical 14: the Scope Resolution Operator and Variables at Different Scopes 193
    6. Practical 15: Default, Parameterized and Copy Constructors, and Destructors 200
    7. Practical 16: Public, Protected and Private Access Specifiers 208
    8. Practical 17: Single and Multilevel Inheritance 215
    9. Practical 17 continued: Multiple and Hierarchical Inheritance 222
    10. Practical 17 continued: Constructors in Derived Classes and the Order They Run In 228
    11. Practical 18: Friend Functions, Inline Functions and the this Pointer 234
    12. Practical 19: Function Overloading and Function Overriding 241
    13. Operator Overloading for a Class of Your Own 248
    munotes.in

    Contents continued

    Module II continued OOPs using C++ practicals: classes, scope resolution, constructors and destructors, access specifiers, inheritance, overloading and overriding, pointers and files

    1. Practical 20: Pointers in a Class, and Dynamic Memory with new and delete 258
    2. Practical 20 continued: Text and Binary File Handling in a Class 268
    3. Sitting the Practical Examination: Q. 1, Q. 2 and the Viva 278
    munotes.in

    Page 1 onwards

    munotes.in

    286 pages in this book. The cover and the contents are above. Everything from page one is in the pass.

    Notes
    2026 Edition, as per the latest syllabus. 286 pages.
    Every chapter in the notes: 34 chapters across 2 modules

    Module I Design and Analysis of Algorithms practicals: arrays, stacks, searching, sorting, pattern matching, recursion, greedy, divide and conquer, and dynamic programming 18 chapters

    1. 1 How This Practical Is Examined: Twenty Exercises, the Journal and the Viva pages 1 to 7
    2. 2 The Python Laboratory from Zero: Running a Program, Saving Its Output and Counting Its Steps pages 8 to 15
    3. 3 Practical 1: Programs for One-Dimensional Arrays pages 16 to 27
    4. 4 Practical 1 continued: Programs for Two-Dimensional Arrays pages 28 to 39
    5. 5 Practical 2: A List-Based Stack and Its Operations pages 40 to 48
    6. 6 Practical 3: Linear Search and Binary Search on a List pages 49 to 60
    7. 7 Practical 4: Bubble Sort and Selection Sort pages 61 to 70
    8. 8 Practical 4 continued: Insertion Sort, and the Three Sorts Compared pages 71 to 78
    9. 9 Practical 5: the Nth Maximum and Nth Minimum Element of a List pages 79 to 87
    10. 10 Practical 6: Finding a Pattern in a String by Brute Force pages 88 to 94
    11. 11 Practical 6 continued: Faster Pattern Matching with Rabin-Karp and Knuth-Morris-Pratt pages 95 to 104
    12. 12 Practical 7: Recursive Factorial, Fibonacci and the Tower of Hanoi pages 105 to 112
    13. 13 Practical 8: the File Merging Problem by the Greedy Method pages 113 to 119
    14. 14 Practical 8 continued: Coin Change by the Greedy Method pages 120 to 126
    15. 15 Practical 9: Merge Sort by Divide and Conquer pages 127 to 133
    16. 16 Practical 9 continued: Strassen's Matrix Multiplication pages 134 to 141
    17. 17 Practical 10: the Fibonacci Series by Dynamic Programming pages 142 to 147
    18. 18 Practical 10 continued: the Longest Common Subsequence pages 148 to 155

    Module II OOPs using C++ practicals: classes, scope resolution, constructors and destructors, access specifiers, inheritance, overloading and overriding, pointers and files 16 chapters

    1. 19 C++ from Zero: Installing g++, Compiling and Running Your First Program pages 156 to 164
    2. 20 Practical 11: a Simple Class, Its Objects, Data Members and Member Functions pages 165 to 172
    3. 21 Practical 12: Branching and Looping inside Class Methods pages 173 to 181
    4. 22 Practical 13: One and Two-Dimensional Arrays in a Class pages 182 to 192
    5. 23 Practical 14: the Scope Resolution Operator and Variables at Different Scopes pages 193 to 199
    6. 24 Practical 15: Default, Parameterized and Copy Constructors, and Destructors pages 200 to 207
    7. 25 Practical 16: Public, Protected and Private Access Specifiers pages 208 to 214
    8. 26 Practical 17: Single and Multilevel Inheritance pages 215 to 221
    9. 27 Practical 17 continued: Multiple and Hierarchical Inheritance pages 222 to 227
    10. 28 Practical 17 continued: Constructors in Derived Classes and the Order They Run In pages 228 to 233
    11. 29 Practical 18: Friend Functions, Inline Functions and the this Pointer pages 234 to 240
    12. 30 Practical 19: Function Overloading and Function Overriding pages 241 to 247
    13. 31 Operator Overloading for a Class of Your Own pages 248 to 257
    14. 32 Practical 20: Pointers in a Class, and Dynamic Memory with new and delete pages 258 to 267
    15. 33 Practical 20 continued: Text and Binary File Handling in a Class pages 268 to 277
    16. 34 Sitting the Practical Examination: Q. 1, Q. 2 and the Viva pages 278 to 286

Questions

Can I download it?

No, and that is deliberate. Everything is read on the site, on any device you sign in on. There is nothing to lose, and nothing to forward.

How long do I keep it?

365 days from the day you pay.

What if the syllabus changes?

Revisions are written into the same subject, and you keep reading the current version for as long as your access runs.

Can I buy one subject instead of the whole semester?

Not yet. It is priced per semester because the solved answers cross-reference modules across all six subjects, and splitting them breaks the links that make the answers useful.

Is this enough to pass?

It covers the prescribed syllabus and every question the papers listed on this page asked. It is not a substitute for your lectures or your textbooks, and we would not claim otherwise.

Can I get a refund?

Once a semester is unlocked it stays unlocked, and there is no way to hand back reading you have already done. That is why this page shows you so much before you pay: the cover of every subject, every chapter in it by name, and the page each one starts on. Read that first and buy only if it is the book you want. If something genuinely went wrong, being charged twice or paying and having nothing unlock, write to us and we refund it: the cancellation and refund policy sets out which cases those are.

Does it renew automatically?

No. It is one payment for one semester. Nothing is charged again unless you choose to buy another semester yourself.

Where our readers study

Students from 173 colleges affiliated to the University of Mumbai read munotes. Here are some of them.

D.G. Ruparel College of Arts, Science and Commerce Lords Universal College N.G. Acharya & D.K. Marathe College of Arts, Science & Commerce K.M. Agrawal College of Arts, Commerce and Science B. N. N. College Arts, Science & Commerce Maharashtra College of Arts, Science & Commerce RAJIV GANDHI COLLEGE OF ARTS, SCIENCE AND COMMERCE, VASHI VIDYAVARDHINIS ANNASAHEB VARTAK COLLEGE ARTS, KEDARNATH MALHOTRA COLLEGE OF COMMERCE, E.S.ANDRADES COLLEGE OF SCIENCE Ismail Yusuf Arts, Science & Commerce College A E Kalsekar Degree College of Arts, Commerce and Science, Mumbra and 163 more
₹798 ₹998
Notes, practical solutions and solved papers, 365 days
Or either one alone: ₹499
Unlock Semester 2
Issue