Download presentation
Presentation is loading. Please wait.
Published bySébastien Meunier Modified over 5 years ago
1
Welcome to the most Amazing course there is
2
Algorithms Algorithm. [webster.com] A procedure for solving a mathematical problem (as of finding the greatest common divisor, or finding max/min ) in a finite number of steps that frequently involves repetition of an operation. [Knuth, TAOCP] An algorithm is a finite, definite, effective procedure, with some input and some output * An algorithm is a sequence of unambiguous instructions for solving a problem, i.e., for obtaining a required output for any legitimate input in a finite amount of time. 👍 "Finite: there must be an end to it within a reasonable time. Definite: precisely definable in clearly understood terms, no pinch of salt type vagaries, or possible ambiguities Effective: the steps must be actually be able to be carried out. [simple enough for someone using pencil and paper to carry out in a finite amount of time] Procedure: the sequence of specific steps arranged in a logical order. Output: unless there is something coming out of the process, the result will remain unknown! "
3
problem algorithm “computer” input output
4
Etymology Algorism = process of doing arithmetic using Arabic numerals. True origin: Abu 'Abd Allah Muhammad ibn Musa al-Khwarizm was a famous 9th century Persian textbook author who wrote Kitab al-jabr wa'l-muqabala “كتاب الجبر والمواريث”* which evolved into today's high school algebra and Algorithms. revolutionized western mathematics: introduced decimal system, adopted use of 0, formal method for solving quadratic equations by completing the square, doing geometry His book al-jabr evolved into today's high school algebra text.
5
What is this course about?
We will study moderately complex data structures and algorithms that are essential in core areas of computer science Operating Systems Database Systems Search Engines Compilers etc. This is one of the most important (and fun) courses you will take
6
the core of computer science
Why study algorithms? Theoretical importance the core of computer science Practical importance A practitioner’s toolkit of known algorithms Framework for designing and analyzing algorithms for new problems 6
7
The two main issues related to algorithms
How to design algorithms Correctness How to analyze algorithm efficiency Resource usage 7
8
Board Example The PlayStation Example Algorithm Design
Additional Reading : Read section 4.1 from book [K] Pages
9
Reading [L] Section 1.1 Pages 1 – 7
You will study the Euclid’s algorithm in Discrete Mathematics too [C] Chapter 1 Pages 5 – 9 Exclude topic: “Hard problems”
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.