课程信息
4.8
60 个评分
9 个审阅
This course introduces the broader discipline of computer science to people having basic familiarity with Java programming. It covers the second half of our book Computer Science: An Interdisciplinary Approach (the first half is covered in our Coursera course Computer Science: Programming with a Purpose, to be released in the fall of 2018). Our intent is to demystify computation and to build awareness about the substantial intellectual underpinnings and rich history of the field of computer science. First, we introduce classic algorithms along with scientific techniques for evaluating performance, in the context of modern applications. Next, we introduce classic theoretical models that allow us to address fundamental questions about computation, such as computability, universality, and intractability. We conclude with machine architecture (including machine-language programming and its relationship to coding in Java) and logic design (including a full CPU design built from the ground up). The course emphasizes the relationships between applications programming, the theory of computation, real computers, and the field's history and evolution, including the nature of the contributions of Boole, Shannon, Turing, von Neumann, and others....
Globe

100% 在线课程

立即开始,按照自己的计划学习。
Calendar

可灵活调整截止日期

根据您的日程表重置截止日期。
Intermediate Level

中级

Clock

Approx. 23 hours to complete

建议:10 weeks of study, 2-5 hours/week...
Comment Dots

English

字幕:English...
Globe

100% 在线课程

立即开始,按照自己的计划学习。
Calendar

可灵活调整截止日期

根据您的日程表重置截止日期。
Intermediate Level

中级

Clock

Approx. 23 hours to complete

建议:10 weeks of study, 2-5 hours/week...
Comment Dots

English

字幕:English...

教学大纲 - 您将从这门课程中学到什么

Week
1
Clock
完成时间为 10 分钟

INFORMATION ABOUT LECTURES 1-10

This lesson provides information about the course Computer Science: Programming with a Purpose, which is the precursor to Computer Science: Algorithms, Theory, and Machines....
Reading
1 个阅读材料
Reading1 个阅读材料
Information about Lectures 1-1010分钟
Clock
完成时间为 2 小时

SORTING AND SEARCHING

We introduce and study classic algorithms for two fundamental problems, in the context of realistic applications. Our message is that efficient algorithms (binary search and mergesort, in this case) are a key ingredient in addressing computational problems with scalable solutions that can handle huge instances, and that the scientific method is essential in evaluating the effectiveness of such solutions....
Reading
5 个视频(共 71 分钟), 3 个阅读材料, 1 个测验
Video5 个视频
Binary search10分钟
Insertion sort11分钟
Mergesort12分钟
Longest repeated substring19分钟
Reading3 个阅读材料
Getting Started10分钟
Supplements for Lecture 1110分钟
Optional Enrichment on Sorting and Searching10分钟
Quiz1 个练习
Sorting and Searching8分钟
Week
2
Clock
完成时间为 2 小时

STACKS AND QUEUES

Our introduction to data structures is a careful look at the fundamental stack and queue abstractions, including performance specifications. Then we introduce the concept of linked structures and focus on their utility in developing simple, safe, clear, and efficient implementations of stacks and queues....
Reading
5 个视频(共 69 分钟), 2 个阅读材料, 1 个测验
Video5 个视频
APIs13分钟
Clients22分钟
Strawman implementations9分钟
Linked lists15分钟
Implementations8分钟
Reading2 个阅读材料
Supplements for Lecture 1210分钟
Optional Enrichment on Stacks and Queues10分钟
Quiz1 个练习
Stacks and Queues8分钟
Week
3
Clock
完成时间为 1 小时

SYMBOL TABLES

The symbol table abstraction is one of the most important and useful programmer's tools, s we illustrate with several examples in this lecture. Extending the scientific approach of the previous two lectures, we introduce and study binary search trees, a classic data structure that supports efficient implementations of this abstraction....
Reading
5 个视频(共 57 分钟), 2 个阅读材料, 1 个测验
Video5 个视频
A design challenge6分钟
Binary search trees13分钟
Implementation4分钟
Analysis8分钟
Reading2 个阅读材料
Supplements for Lecture 1310分钟
Optional Enrichment on Symbol Tables10分钟
Quiz1 个练习
Symbol Tables8分钟
Week
4
Clock
完成时间为 2 小时

INTRODUCTION TO THE THEORY OF COMPUTING

The theory of computing helps us address fundamental questions about the nature of computation while at the same time helping us better understand the ways in which we interact with the computer. In this lecture, we introduce formal languages and abstract machines, focusing on simple models that are actually widely useful in practical applications....
Reading
5 个视频(共 63 分钟), 2 个阅读材料, 1 个测验
Video5 个视频
Overview5分钟
Regular Expressions20分钟
DFAs14分钟
Applications12分钟
Limitations9分钟
Reading2 个阅读材料
Supplements for Lecture 1410分钟
Optional Enrichment on Theory of Computing10分钟
Quiz1 个练习
Theory of Computing8分钟

讲师

Robert Sedgewick

William O. Baker *39 Professor of Computer Science
Computer Science

Kevin Wayne

Senior Lecturer
Computer Science

关于 Princeton University

Princeton University is a private research university located in Princeton, New Jersey, United States. It is one of the eight universities of the Ivy League, and one of the nine Colonial Colleges founded before the American Revolution....

常见问题

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you purchase a Certificate you get access to all course materials, including graded assignments. Upon completing the course, your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

  • No. As per Princeton University policy, no certificates, credentials, or reports are awarded in connection with this course.

还有其他问题吗?请访问 学生帮助中心