Introduction to Algorithms

Home / Undergraduate Studies / Courses / Β semester / Introduction to Algorithms

C204 Introduction to Algorithms

Professor: Evi PAPAIOANNOU

Course website

An algorithm can be considered as an exact “recipe” that determines the sequence of steps required to solve a problem. The aim of this course is to let students have an introductory experience with fundamental algorithms and basic – yet powerful – problem solving methods and techniques. In particular:

  • Have you, perhaps, searched in billions of documents in the web, choosing a couple of them that are most relevant to your needs?
  • Have you stored or transmitted extremely large amounts of information, without making a single mistake, in presence of electromagnetic interference that affects all electronic devices?
  • Did you successfully complete an online bank transaction, even though many thousands of other customers were simultaneously using the same server?
  • Did you communicate some confidential information (e.g., your credit card number) securely over wires that can be actually “seen” by many other computers?
  • Did you use compression to reduce a picture of several megabytes to a more manageable size for sending it by e-mail?
  • Or did you, without even thinking about it, exploit the artificial intelligence in a hand-held device that self-corrects your typing on its tiny keyboard?

In the background of all these – rather routine – activities there exist simple, fascinating “ideas”, i.e., “algorithms”!

The objective of this course is (1) the description and analysis of fundamental ideas (i.e., algorithms) that modern computers use many times every day while we hardly realize it, and (2) an introduction to the formal analysis of algorithms (correctness, efficiency, performance issues).

Companions

  1. Βιβλίο [50657158]: 9 ΑΛΓΟΡΙΘΜΟΙ ΠΟΥ ΑΛΛΑΞΑΝ ΤΟ ΜΕΛΛΟΝ, JOHN MacCORMICK Λεπτομέρειες
  2. Βιβλίο [68369726]: Αλγόριθμοι, 2η Έκδοση, Μποζάνης Παναγιώτης Λεπτομέρειες

Course outline