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

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

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

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

Principles of Computing (Part 2)

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

О курсе

This two-part course introduces the basic mathematical and programming principles that underlie much of Computer Science. Understanding these principles is crucial to the process of creating efficient and well-structured solutions for computational problems. To get hands-on experience working with these concepts, we will use the Python programming language. The main focus of the class will be weekly mini-projects that build upon the mathematical and programming principles that are taught in the class. To keep the class fun and engaging, many of the projects will involve working with strategy-based games. In part 2 of this course, the programming portion of the class will focus on concepts such as recursion, assertions, and invariants. The mathematical portion of the class will focus on searching, sorting, and recursive data structures. Upon completing this course, you will have a solid foundation in the principles of computation and programming. This will prepare you for the next course in the specialization, which will begin to introduce a structured approach to developing and analyzing algorithms. Developing such algorithmic thinking skills will be critical to writing large scale software and solving real world computational problems.

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

Data StructuresAlgorithmsPython ProgrammingComputer ProgrammingProgramming PrinciplesProgram DevelopmentTheoretical Computer ScienceComputer ScienceVerification And ValidationComputational Thinking

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

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

01Searching and Data Structures20 материалов

Week 1 Core Materials

Introduction ВидеоThe Importance of Searching ВидеоGeneratorsВидеоStacks and Queues ВидеоInheritance Видео

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

Scott Rixner

Professor

Joe Warren

Professor

Luay Nakhleh

Associate Professor

Principles of Computing (Part 2)
В каталоге вашей программы

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

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

Начать на Coursera

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

Обучение на Coursera

≈ 15.6 ч

4 модулей

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

Субтитры: Арабский, Французский, Бенгальский, Узбекский, Украинский, Китайский (Китай), Греческий, Итальянский, Бразильский португальский, Вьетнамский, Нидерландский, Корейский, Немецкий, Пушту, Урду, Русский, Тайский, Индонезийский, Шведский, Турецкий, Азербайджанский, Испанский, Дари, Хинди, Японский, Румынский, Казахский, Венгерский, Польский

Часть программы вашего университета
Grid ClassВидео
Grid searchВидео
Homework 1Задание

Mini-project #1 - Zombie Apocalypse

Mini-project VideoВидеоMini-project DescriptionЧтениеAssignment: Zombie ApocalypseВнешний инструментAssignment Submission HistoryВнешний инструмент

Week 1 Supplemental Materials (optional)

Math Notes on Growth Rates of FunctionsЧтениеMath Notes on Grid RepresentationsЧтениеMath Notes on Breadth-First SearchЧтениеPractice Activity - Sorting stringsЧтениеPractice Activity - Working with Distance FieldsЧтение

Pre-class material (watch if you have not taken IIPP)

CodeSkulptor (optional video from our previous class)ВидеоSaving in CodeSkulptor (optional video from our previous class)ВидеоBeyond CodeSkulptor (optional video from our previous class)Видео
02Recursion14 материалов

Week 2 Core Materials

The Importance of Recursion ВидеоRecursion ВидеоBinary Search ВидеоVisualizing Recursion ВидеоRecurrencesВидеоReading Files ВидеоHomework 2Задание

Mini-project #2 - Word Wrangler

Mini-project VideoВидеоMini-project DescriptionЧтениеAssignment: Word WranglerВнешний инструмент

Week 2 Supplemental Materials (optional)

Math Notes on Recurrence RelationsЧтениеPractice Activity - RecursionЧтениеPractice Activity - Binary representations for numbersЧтениеPractice Activity - Visualizing recurrencesЧтение
03Trees14 материалов

Week 3 Core Materials

The Importance of Trees ВидеоLambda ВидеоTreesВидеоIllustration of Trees ВидеоMinimaxВидеоHomework 3Задание

Mini-project #3 - Tic-Tac-Toe (Minimax)

Mini-project VideoВидеоMini-project DescriptionЧтениеTTTBoard ClassЧтениеAssignment: Tic-Tac-Toe (Minimax)Внешний инструмент

Week 3 Supplemental Materials (optional)

Math Notes on TreesЧтениеMath Notes on MinimaxЧтениеPractice Activity - Nim (Tree search)ЧтениеPractice Activity - Drawing treesЧтение
04Modeling, Assertions, and Invariants13 материалов

Week 4 Core Materials

The Importance of Modeling ВидеоAssertions ВидеоInvariantsВидеоModeling ВидеоSoftware Development ВидеоThe Basics of the Fifteen PuzzleЧтениеHomework 4Задание

Mini-project #4 - The Fifteen Puzzle

Mini-project VideoВидеоMini-project DescriptionЧтениеAssignment: The Fifteen PuzzleВнешний инструмент

Week 4 Supplemental Materials (optional)

Math Notes on InvariantsЧтениеPractice Activity - Solitaire TantrixЧтение

Post-class

What is Algorithmic Thinking? Видео