'Problem Solving and Algorithmic Thinking' is a course offered in the first semester of  B. Tech. programs at the School of Engineering, Amrita Vishwa Vidyapeetham.

Preamble

Algorithmic Thinkingis a fundamental skill in this 21st Century. This course provides the foundations of Computational Problem Solving. It focuses on principles and methods rather than on systems and tools thus providing transferable skills to any other domain. It also provides foundation for developing computational perspectives of one’s own discipline.

Course Outcomes

CO S tatement Level
CO1 Apply algorithmic thinking to understand, define and solve problems L2
CO2 Design and implement algorithm(s) for a given problem L3
CO3 Apply the basic programming constructs for problem solving L2
CO4 Understand an algorithm by tracing its computational states, identifying bugs and correcting them L2

Mapping of course outcomes with program outcomes:

COs PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2
CO1 1 1                        
CO2 3 2 3   3     3 3 3        
CO3 2 1                        
CO4 1 1 2   2                  

Unit 1

Problem Solving and Algorithmic Thinking Overview – problem definition, logical reasoning; Algorithm – definition, practical examples, properties, representation, algorithms vs programs.

Unit 2

Algorithmic thinking – Constituents of algorithms – Sequence, Selection and Repetition, input-output; Computation – expressions, logic; algorithms vs programs, Problem Understanding and Analysis – problem definition, input-output, variables, name binding, data organization: lists, arrays etc. algorithms to programs.

Unit 3

Problem solving with algorithms – Searching and Sorting, Evaluating algorithms, modularization, recursion. C for problem solving – Introduction, structure of C programs, data types, data input, output statements, control structures.

TEXTBOOK:

  • Riley DD, Hunt KA. Computational Thinking for the Modern Problem Solver. CRC press; 2014 Mar 27.

REFERENCES:

  • Ferragina P, Luccio Computational Thinking: First Algorithms, Then Code. Springer; 2018.
  • Beecher Computational Thinking: A beginner's guide to Problem-solving and Programming.BCS Learning & Development Limited; 2017.
  • Curzon P, McOwan The Power of Computational Thinking: Games, Magic and Puzzles to help you become a computational thinker. World Scientific Publishing Company; 2017.