Back close

Course Detail

Course Name Programming for Problem Solving
Course Code 25CSA631
Program M. C. A.
Campus Amritapuri, Kochi

Syllabus

Unit 1

Unit 1: Foundations of Programming

Introduction to logic building, Control structures: loops, conditionals, Functions and modular programming, Recursion basics, Input/output operations, Debugging and error handling.

Unit 2

Unit 2: Problem-Solving Techniques

Pattern recognition and problem decomposition, Mathematical problems (number theory, combinatorics), String manipulation techniques, Array-based problem solving, Hashing and frequency maps, Sliding window and two-pointer techniques.

Unit 3

Unit 3: Programming Challenges

Daily coding problems (easy to medium level), solving problems from platforms like HackerRank, LeetCode, CodeChef, Group coding sessions and peer reviews, Timed coding tests and contests.

Unit 4

Unit 4: Real-World Applications

Writing clean and efficient code, understanding constraints and edge cases, optimizing solutions. Mini-project: Build a simple CLI tool or game (e.g., quiz app, calculator, to-do list).

Text Books / References
  1. Let Us C” by Yashavant Kanetkar – A classic book for foundational programming concepts and exercises.
  2. Introduction to Algorithms” by Cormen, Leiserson, Rivest, and Stein – For deeper understanding of algorithmic techniques (selected chapters).
  3. Cracking the Coding Interview” by Gayle Laakmann McDowell – Excellent for preparing students for coding interviews and challenges

Objectives and Outcomes

Course Objective:

To develop students’ logical reasoning and programming skills through hands-on problem solving, preparing them for coding assessments and technical interviews.

Course Outcomes:

  1. CO1: Apply fundamental programming constructs such as loops, conditionals, functions, and recursion to solve basic computational problems.
  2. CO2: Analyze problems using decomposition techniques and implement solutions using arrays, strings, and hashing.
  3. CO3: Solve algorithmic challenges using techniques like sliding window, two-pointer, and frequency maps.
  4. CO4: Demonstrate proficiency in solving coding problems from online platforms under time constraints.
  5. CO5: Develop clean, efficient, and optimized code for real-world applications, considering constraints and edge cases.
  6. CO6: Design and implement a mini-project using command-line interface (CLI) tools that integrates learned programming concepts.

CO-PO Mapping

PO/PSO 

PO1 

PO2 

PO3 

PO4 

PO5 

PO6 

PO7 

PO8 

PO9 

PO10 

PO11 

PO12 

CO 

CO1 

– 

– 

– 

– 

– 

– 

– 

CO2 

– 

– 

– 

– 

– 

– 

– 

CO3 

– 

– 

– 

– 

– 

– 

– 

CO4 

– 

– 

– 

– 

– 

– 

CO5 

– 

– 

– 

– 

– 

– 

CO6 

– 

– 

– 

– 

– 

– 

DISCLAIMER: The appearance of external links on this web site does not constitute endorsement by the School of Biotechnology/Amrita Vishwa Vidyapeetham or the information, products or services contained therein. For other than authorized activities, the Amrita Vishwa Vidyapeetham does not exercise any editorial control over the information you may find at these locations. These links are provided consistent with the stated purpose of this web site.

Admissions Apply Now