К содержимому
learnspaceYOUR NEXT CHAPTER
ПРОСТРАНСТВО ОБУЧЕНИЯ
ГлавнаяКаталог курсовМоё обучениеCoursera

Знания без границ

Учитесь у лучших университетов и компаний мира.

Открыть Coursera
Интеграция
Пространство университета
Моё пространствоСтраница курса
↵
ЯЛичный кабинетСтудент
© 2026 LearnSpaceКаждый день — возможность узнать больше.Помощь
Design and Analysis of Algorithms · LearnSpace
Назад в каталог
courseraПрограммирование

Design and Analysis of Algorithms

Курс от Clemson University
Средний≈ 27.5 чАнглийский
О курсеНавыкиПрограммаПреподаватели

О курсе

The study of algorithms is a significant part of the foundation for the discipline of computing. Over the past several decades, research in algorithmic computer science has advanced at a rapid pace its contributions have had a profound impact on almost every area of science and industry. In this graduate-level course, we aim to provide a modern introduction to the study of algorithms that is both broad and deep. The primary goals of the course are: (1) to become proficient in the application of fundamental algorithm design techniques, as well as the main tools used in the analysis of algorithms, (2) to study and analyze different algorithms for many of the most common types of “standard” algorithmic problems, and (3) to improve one’s ability to implement algorithmic ideas in code.

Навыки, которые вы освоите

AlgorithmsData StructuresComputer ProgrammingDesign StrategiesTheoretical Computer ScienceAnalysisComputer ScienceProbability

Программа курса

6 модулей · 88 учебных материалов

01Module 1: Preliminary Concepts and Fundamentals27 материалов

Course Overview

About Learning AlgorithmsВидеоCourse OverviewВидеоRequisite KnowledgeВидеоCourse OutlineЧтение

Учитесь у экспертов

Brian Dean

Professor and C. Tycho Howle Director

Design and Analysis of Algorithms
В каталоге вашей программы

Инвестируйте в себя

Новые знания — в удобное для вас время.

Начать на Coursera

Обучение откроется на Coursera
в новой вкладке

Обучение на Coursera

≈ 27.5 ч

6 модулей

Язык: Английский

Часть программы вашего университета
Overview of Course Learning ObjectivesЧтение
Learner Support ResourcesЧтение

Module Overview

Module OverviewВидеоConnecting Course Learning ObjectivesЧтение

Lesson 1: Algorithm Design Overview 

Algorithm Design OverviewВидео

Lesson 2: Algorithm Performance Analysis

Asymptotic NotationВидеоAsymptotic Notation Deep DiveВидеоAsymptotic Notation "o" and "ω" and Common Running TimesВидео

Lesson 3: Algorithm Performance Analysis Examples

Simple Loop Counting and SortingВидеоRecursion, Merge Sort, and Per-Element Running TimeВидео

Lesson 4: Average vs. Worst Case Analysis

Average Case vs. Worst Case and Empirical TestingВидео

Lesson 5: Input and Output Sensitivity

Input and Output SensitivityВидео

Lesson 6: Models of Computation

Models of Computation OverviewВидеоSolving a Coin Puzzle with SortingВидео

Lesson 7: Data Structures

Arrays and Linked ListsВидеоExpanding ArraysВидеоOptimizing Array and Linked List PerformanceВидеоQueues, Stacks, and AbstractionВидео

Lesson 8: Matrix Transposition

In-Place Matrix Transposition: Domination Radius Warm-up Part 1ВидеоIn-Place Matrix Transposition: Domination Radius Warm-up Part 2ВидеоIn-Place Matrix Transposition: In-Place PermutationВидео

Coding Discussion: Technical Job Interview Practice

Coding DiscussionВидео

Module 1 Quiz

Module 1 QuizЗадание
02Module 2: Programming Assignment #13 материалов

Module Overview

Connecting Course Learning ObjectivesЧтение

Programming Assignment #1

Assignment #1 OverviewВидеоAssignment #1Программирование
03Module 3: Randomization20 материалов

Module Overview

Module OverviewВидеоConnecting Course Learning ObjectivesЧтение

Lesson 1: Expected Value and Expected Running Time

Expected Running Time Part 1ВидеоExpected Running Time Part 2Видео

Lesson 2: Randomized Incremental Construction

Randomized Incremental Construction Part 1ВидеоRandomized Incremental Construction Part 2Видео

Lesson 3: Bucket Sort and Large-Scale Problem Decomposition

Bucket Sort Part 1ВидеоBucket Sort Part 2Видео

Lesson 4: Randomized Reduction

Randomized ReductionВидео

Lesson 5: Coding Discussion: Priority Queues and Randomly-Mergeable Binary Heaps

Coding Randomized Mergeable HeapsВидео

Lesson 6: (Randomized) Quicksort

Randomized QuicksortВидео

Lesson 7: Average-Case Analysis (and Further Analysis Practice)

Average Case Analysis Part 1ВидеоAverage Case Analysis Part 2ВидеоAverage Case Analysis Part 3Видео

Lesson 8: Geometric Random Variables and Expected Trials Until Success

Geometric Random Variables Part 1ВидеоGeometric Random Variables Part 2ВидеоGeometric Random Variables Part 3Видео

Lesson 9: Tail Bounds and "High Probability" Results

High Probability Results Part 1ВидеоHigh Probability Results Part 2Видео

Module 3 Quiz

Module 3 QuizЗадание
04Module 4: Recursion16 материалов

Module Overview

Module OverviewВидеоConnecting Course Learning ObjectivesЧтение

Lesson 1: Coding Discussion: Recursive Thinking

Coding DiscussionВидео

Lesson 2: Divide and Conquer and Solving Recurrences

Solving Recurrences Part 1ВидеоSolving Recurrences Part 2ВидеоSolving Recurrences Part 3Видео

Lesson 3: Divide and Conquer: Examples

Divide and Conquer Examples Part 1ВидеоDivide and Conquer Examples Part 2ВидеоDivide and Conquer Examples Part 3ВидеоDivide and Conquer Examples Part 4Видео

Lesson 4: Selection and Randomized Quickselect

Selection and Quickselect Part 1ВидеоSelection and Quickselect Part 2Видео

Lesson 5: Divide and Conquer: Elegant Final Examples

Divide and Conquer Part 1ВидеоDivide and Conquer Part 2ВидеоDivide and Conquer Part 3Видео

Module 4 Quiz

Module 4 QuizЗадание
05Module 5: Programming Assignment #23 материалов

Module Overview

Connecting Course Learning ObjectivesЧтение

Programming Assignment #2

Assignment #2 OverviewВидеоAssignment #2Программирование
06Module 6: Fundamental Data Structures19 материалов

Module Overview

Module OverviewВидеоConnecting Course Learning ObjectivesЧтение

Lesson 1: Binary Heaps

Binary Heaps Part 1ВидеоBinary Heaps Part 2ВидеоBinary Heaps Part 3Видео

Lesson 2: Binary Search Tree Basics

Binary Search Tree Basics Part 1ВидеоBinary Search Tree Basics Part 2Видео

Lesson 3: Binary Search Trees: Selection and Sequences

Binary Search Trees as SequencesВидео

Lesson 4: Balancing a Binary Search Tree

Binary Search Tree Balancing Part 1ВидеоBinary Search Tree Balancing Part 2ВидеоBinary Search Tree Balancing Part 3Видео

Lesson 5: Coding Discussion: Balanced Binary Search Trees

Coding DiscussionВидео

Lesson 6: Sweep Line Algorithms

Sweep Line Algorithms Part 1ВидеоSweep Line Algorithms Part 2ВидеоSweep Line Algorithms Part 3Видео

Module 6 Quiz

Module 6 QuizЗадание

Congratulations! What's Next?

Course Feedback & RatingsЧтениеPreview the Complete, For-Credit CourseЧтениеEarn Your MS in CS with ClemsonЧтение