Algorithms and complexity are at the heart of computer science, shaping how we design solutions and measure efficiency. This course provides a rigorous introduction to both the theory and practice of algorithms. You’ll begin with automata theory, exploring how machines recognise and process languages. You’ll then move into practical algorithmic techniques, including searching and sorting, before learning to design and evaluate recursive and iterative algorithms. Finally, you’ll study complexity theory, developing the ability to classify problems and understand computational limits. By combining abstract models with real-world techniques, this course equips you to design algorithms, assess performance, and reason about scalability. Whether you’re pursuing studies in computer science, preparing for a programming role, or aiming to strengthen your technical foundations, you’ll gain both theoretical insight and practical skills for tackling computing challenges.


Algorithms and Complexity


Algorithms and Complexity
Ce cours fait partie de Spécialisation "Essential Mathematics for Computer Science"

Instructeur : Omar Karakchi
Inclus avec
Expérience recommandée
Ce que vous apprendrez
Design finite automata and explain how deterministic and non-deterministic machines recognise and process formal languages.
Implement, compare, and evaluate searching and sorting algorithms, analysing their performance and correctness in different contexts.
Create recursive and iterative algorithms, identifying scenarios where each approach provides clarity, efficiency, or scalability.
Analyse algorithms with asymptotic notation, explain complexity classes like P and NP, and interpret NP-completeness in computing.
Compétences que vous acquerrez
- Catégorie : Algorithms
- Catégorie : Complex Problem Solving
- Catégorie : Critical Thinking
- Catégorie : Graph Theory
- Catégorie : Computer Science
- Catégorie : Critical Thinking and Problem Solving
- Catégorie : Data Structures
- Catégorie : Analysis
- Catégorie : Performance Testing
- Catégorie : Programming Principles
- Catégorie : Logical Reasoning
- Catégorie : Theoretical Computer Science
- Catégorie : Game Theory
- Catégorie : Computational Logic
- Catégorie : Computational Thinking
- Section Compétences masquée. Affichage de 10 compétence(s) sur 15.
Détails à connaître

Ajouter à votre profil LinkedIn
février 2026
19 devoirs
Découvrez comment les employés des entreprises prestigieuses maîtrisent des compétences recherchées

Élaborez votre expertise du sujet
- Apprenez de nouveaux concepts auprès d'experts du secteur
- Acquérez une compréhension de base d'un sujet ou d'un outil
- Développez des compétences professionnelles avec des projets pratiques
- Obtenez un certificat professionnel partageable

Il y a 4 modules dans ce cours
In this module, we will cover the following key concepts: definitions, letters, strings, finite automata, language, deterministic and non-deterministic finite automata.
Inclus
16 vidéos5 lectures2 devoirs2 laboratoires non notés
In this module, we will cover the following key concepts: algorithms, insertion sorts, bubble sorts, representation, binary search and heap sorts.
Inclus
10 vidéos2 lectures5 devoirs1 sujet de discussion1 laboratoire non noté
In this module, we will cover the following key concepts: recursion, iteration, quick sorts, merging lists, merge sorts, Shapley proofs and stable matching.
Inclus
10 vidéos3 lectures6 devoirs1 sujet de discussion
In this module, we will cover the following key concepts: efficiency, bubble sorts, binary search, asymptotic complexity, Big O notation, recursion complexity, master theorem, quick sorts and merge sorts.
Inclus
14 vidéos2 lectures6 devoirs1 sujet de discussion
Obtenez un certificat professionnel
Ajoutez ce titre à votre profil LinkedIn, à votre curriculum vitae ou à votre CV. Partagez-le sur les médias sociaux et dans votre évaluation des performances.
Instructeur

En savoir plus sur Software Development
Statut : PrévisualisationNortheastern University
Statut : PrévisualisationBirla Institute of Technology & Science, Pilani
Statut : PrévisualisationNortheastern University
Statut : Essai gratuitUniversity of California San Diego
Pour quelles raisons les étudiants sur Coursera nous choisissent-ils pour leur carrière ?

Felipe M.

Jennifer J.

Larry W.

Chaitanya A.

Ouvrez de nouvelles portes avec Coursera Plus
Accès illimité à 10,000+ cours de niveau international, projets pratiques et programmes de certification prêts à l'emploi - tous inclus dans votre abonnement.
Faites progresser votre carrière avec un diplôme en ligne
Obtenez un diplôme auprès d’universités de renommée mondiale - 100 % en ligne
Rejoignez plus de 3 400 entreprises mondiales qui ont choisi Coursera pour les affaires
Améliorez les compétences de vos employés pour exceller dans l’économie numérique
Foire Aux Questions
To access the course materials, assignments and to earn a Certificate, you will need to purchase the Certificate experience when you enroll in a course. You can try a Free Trial instead, or apply for Financial Aid. The course may offer 'Full Course, No Certificate' instead. This option lets you see all course materials, submit required assessments, and get a final grade. This also means that you will not be able to purchase a Certificate experience.
When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile.
Yes. In select learning programs, you can apply for financial aid or a scholarship if you can’t afford the enrollment fee. If fin aid or scholarship is available for your learning program selection, you’ll find a link to apply on the description page.
Plus de questions
Aide financière disponible,



