Recursion Practice questions

Duration: 3 min

This video lesson is available to enrolled students.

Return to /learn/MPPSC-ASSISTANT-PROFESSOR-COMPUTER-SCIENCE-PAPER-2/data-structure-and-algorithms/stack/recursion-stack/asset-recursion-practice-questions after enrolling

Inside: a video lesson and guided study material.

Module outline

  1. About Course: About the Course
  2. Paper 1 | General Studies: State Wise GK
  3. Paper 1 | Information and Communication Technology: Role of Internet and Web Services, Security in Mobile and Wireless Computing
  4. Paper 1 | Current Affairs: GK- Current Affairs
  5. Paper 2 | Discrete Mathematical Structure: Digital Systems & Boolean Basics, Logic Gates & Hardware, Boolean Expression, Boolean Minimization, Set Theory, Relations, Functions, Graph Theory, Group Theory, Propositional and Predicate Logic, Probability
  6. Paper 2 | Digital Computer Organization And Architecture: Number System, Number Representation, Sequential Circuits, Combinational Circuit, Basics of COA, Floating Point Rep, Cache Memory Organization, Input Output Organisation, Pipelining, Instr Formats & Modes, Register Transfer and Microoperations, Control Unit Design, Programming the Basic Computer
  7. Paper 2 | C Programming: C Fundamentals, Control Flow, Functions, Arrays & Pointers, Storage Classes, Structures & Enums, DMA, Macros, Scoping & File Handling
  8. Paper 2 | Programming Languages & Object-Oriented Programming Concepts: Java, OOPS with C++, Java Fundamentals, Array, String, IO & References
  9. Paper 2 | Python: Introduction to Python, Tokens, Variables, Data Types, I/O, Operators & Expressions, Control Flow & Looping, Collections & Strings, Functions & Modules, File Handling & Data Analysis
  10. Paper 2 | Data Structure And Algorithms: Introduction to DS, Array, Stack, Queue, Linked List, Tree, Graphs, Hashing, Algorithm Analysis, Time Complexity Analysis, Sorting Algorithms, Greedy Algorithms, Minimum Spanning Trees, Advanced Algorithms
  11. Paper 2 | Operating System: Introduction to OS, Process Management, CPU Scheduling, Process Synchronization, Deadlock, Threads & Process Creation, Memory Management, Virtual Memory, Disc Scheduling, File Management, Unix OS
  12. Paper 2 | Theory Of Computation: Introduction to TOC, Deterministic FA (DFA), Non-Deterministic FA, Regular Expressions, Grammar, Regular Language Properties, Moore & Mealy Machines, Pushdown Automata & CFG, Turing Machines, Complexity Theory
  13. Paper 2 | Compiler Design: Intro to Compilers, Lexical Analysis, Grammar & CFG, Syntax Analysis: Top-Down, Syntax Analysis: Bottom-Up, Semantic Analysis & SDT, Intermediate Code Gen, Code Optimization, Run Time Environment
  14. Paper 2 | Database Management System: Basics of DBMS, ER Diagram, Relational Model & Functional Dependencies, Keys & Integrity Constraints, Normalization (1NF - BCNF), Decomposition Properties & 4NF, Relational Algebra, SQL, Transaction Management, Concurrency Control, Database Recovery, Database Security & Authorization, Enhanced Data Models
  15. Paper 2 | Computer Network And Information Security: Introduction to CN, Data Communication, Application Layer, Hardware basics, Cyber Threats and Malware Attacks, Network Security, DLL: Access Control, DLL: Flow Control, DLL: Error Control, DLL: Framing, Data Link Layer - Ethernet, Net Layer: IPv4 & Proto, Net Layer: IP Addressing, Net Layer:Routing Protocol, Transport Layer Services, TL: Congestion & UDP
  16. Paper 2 | Software Engineering: Fundamentals of Software Engineering, Software Requirements and Quality Assurance, Software Design, Estimation and Metrics, Software Testing, Software Maintenance and Configuration Management
  17. Paper 2 | Current Trends & Technologies: Emerging Tech Trends, Approaches to AI, Search Algorithms, Game Playing, Knowledge Representation, Planning, Multi Agent Systems, Fuzzy Sets, Natural Language Processing, Artificial Neural Networks, Genetic Algorithms, Artificial Intelligence, Data Warehousing & Mining, Electronic Data Interchange and E-Commerce, Terms & Abbreviations
  18. Paper 2 | Full Length Mock Tests:
AI summary & chapters

AI Summary

An AI-generated summary of this video lecture.

The video presents a computer science problem asking for the output of a specific C function `fun(int n)` when called with `n = 25`. The instructor displays the function code, which includes a base case check `if (n == 0) return;`, a print statement `printf("%d", n%2);`, and a recursive call `fun(n/2);`. He explains that the function executes the print statement before the recursive call, crucial for determining output order. He underlines key lines, pointing out `n%2` and `n/2` operations. The background features a watermark for KnowledgeGate.

Chapters

  1. 0:00 – 2:00 00:00-02:00

    In the first segment, the instructor introduces the problem and begins tracing `fun(25)`. He notes that since 25 is not 0, the function prints `25 % 2` (1) and calls `fun(12)`. He continues, showing `fun(12)` prints 0 and calls `fun(6)`, and `fun(6)` prints 0 and calls `fun(3)`. The instructor draws a tree diagram on the right side of the whiteboard to visualize this recursive structure, writing `fun(25)` at the top and branching down to `fun(12)`, `fun(6)`, `fun(3)`, and `fun(1)`. He uses a digital pen to write on the screen, clearly marking the flow of execution.

  2. 2:00 – 3:00 02:00-03:00

    In the final segment, the instructor completes the trace by showing that `fun(1)` prints 1 and calls `fun(0)`. He demonstrates that `fun(0)` hits the base case condition `if (n == 0)` and returns immediately without printing anything. He then aggregates the printed values in the order they occurred: 1, 0, 0, 1, 1. He writes the final sequence "10011" in a green box on the screen. Comparing this result with the given multiple-choice options—(A) 11001, (B) 10011, (C) 11111, (D) 00000—he identifies option (B) as the correct answer and places a green checkmark next to it to signify the correct choice.

The lesson demonstrates tracing recursive functions by following the order of operations: checking the base case, executing the print statement, and then making the recursive call. The key takeaway is that the function prints remainders of division by 2 as encountered in recursion, corresponding to binary representation but in reverse order (Least Significant Bit first). By visualizing the call stack as a tree, students understand the flow of control and the state of variable `n` at each step. This method is essential for debugging complex recursive algorithms in computer science, ensuring output matches expected binary conversion logic.

Loading lesson…