# Courses tagged with "Computer Science" (705)

All categories   Choose category
 -- all categories -- Agriculture Business Computer Sciences Education Engineering English & Literature Ethnic Studies Foreign Languages General & Interdisciplinary Studies Health and Welfare Life Sciences Mathematics Military Science & Protective Services Philosophy, Religion, & Theology Physical Sciences Public Affairs & Law Social Sciences Visual & Performing Arts [close]
Sort by: Name, Rating, Price
Start time: Any, Upcoming, Recent started, New, Always Open
Price: Any, Free, Paid

### Combinatorial Mathematics | 组合数学

Starts : 2017-03-02
edX Free English Computer Science EdX Math TsinghuaX

Our lives are full of combinations. Combinatorial mathematics is just the science to deal with combinations of discrete items. As an ancient field, the history of combinatorial mathematics can be traced back over 4000 years to the age of the Great Yu in ancient China. Today, combinatorial mathematics is regarded as the basis of computer science since the algorithms in programming heavily rely on the analysis of the discrete elements.

Instead of relying on the traditional mathematical "theorem - proof" format, this course demonstrates various principles in an intuitive manner with ancient stories, the scenes of movies and even a magic show. What you’ll learn:

• The counting principles based on the basic operations “+”, “-”, “*”, “/”;
• Generating functions
• Recurrent number serials such as Fibonacci number, Catalan number, and more
• Pigeon hole principles
• Inclusion and exclusion principles
• Polya counting based on group theory

This course is based on a highly regarded on-campus Tsinghua class called Combinatorics, and is ideal for students who are interested in mathematics or computer science. Enroll today and learn the mathematical theory needed to solve the real-world problems!

• 基于四则运算的计数法则；
• 母函数；
• 递推序列，如斐波那契数，卡特兰数等；
• 鸽巢原理；
• 容斥原理；
• 基于群论的波利亚定理。

FAQ

I don’t speak Chinese, can I learn the course?

All the materials are in English. Though the original video was recorded in Chinese, the course team record the corresponding dubbing in English. All the audio and subtitles are processed to fit the English dubbing as much as possible, so that you can enjoy this wonderful course in English.

What are the textbook and the reference books for this course?

There is no textbook requirement for this course. The handouts distributed every week are critical. The following books are references

• Richard A. Brualdi; Introductory Combinatorics (5th edition), Pearson, 2009
• J.H.van Lint and R.M. Wilson; A course in Combinatorics, Cambridge University Press, 2001
• 卢开澄,《组合数学》第四版,清华大学出版社

• 70% quizzes and exercises
• 30% final exam

How can I get the certificate?

If your final score is no less than 60.

Do I need to know how to program to learn this class?

Not necessary. This course is a math course which is based on fundamental theory. But to help the students to have the intuitive feel of the effects of the theory, we also provide a code lib that you can compare different implementations by running different programs.

### Command Line Tools for Genomic Data Science

Starts : 2015-12-07
Coursera Free Closed [?] English Biology & Life Sciences Computer Science Health & Society Statistics and Data Analysis Theory

Introduces to the commands that you need to manage and analyze directories, files, and large sets of genomic data. This is the fourth course in the Genomic Big Data Science Specialization from Johns Hopkins University.

### Comparing Genes, Proteins, and Genomes (Bioinformatics III)

Starts : 2016-03-09
Coursera Free Closed [?] English Biology & Life Sciences Computer Science Computer Science Mathematics Software Engineering Theory

After sequencing genomes, we would like to compare them. We will see that dynamic programming is a powerful algorithmic tool when we compare two genes (i.e., short sequences of DNA) or two proteins. When we "zoom out" to compare entire genomes, we will employ combinatorial algorithms.

### Compilers

Starts : 2014-03-17
Coursera Free Computer Sciences English Computer Science Computer Science Software Engineering Systems & Security

This course will discuss the major ideas used today in the implementation of programming language compilers. You will learn how a program written in a high-level language designed for humans is systematically translated into a program written in low-level assembly more suited to machines!

### Compliance in Office 365: eDiscovery

Starts : 2017-04-01
edX Free English Business & Management Computer Science EdX Microsoft

As organizational data stored in email and documents continues to grow, Office 365 makes it easy to find relevant information as you need it.

In this course, you will learn how to plan, implement and manage eDiscovery in your organization. This course covers all necessary steps to effectively plan and manage discovery requests and conduct an Advanced eDiscovery analysis.

This is the first in a series of courses concerning Compliance in Office 365.

### Compliance in Office 365​®: Data Governance

Starts : 2017-04-01
edX Free Closed [?] English Business & Management Computer Science EdX Microsoft

In Compliance in Office 365®: Data Governance, you will learn how to plan, implement, and manage the archiving and data retention features of Office 365 in your organization. As organizational data stored in email and documents continues to grow, Office 365 makes it easy to control the information that you want to keep and control the flow of information out of your organization. This course covers all the information you need to effectively plan and manage data retention and data leakage.

This is the second in a series of courses concerning Compliance in Office 365. By completing this course, you will gain an understanding of the archiving and data retention capabilities of Office 365 and data leakage prevention.

### Computation Structures - Part 1: Digital Circuits

Starts : 2016-09-06
edX Free English Computer Science EdX Electronics Engineering MITx

Digital systems are at the heart of the information age in which we live, allowing us to store, communicate and manipulate information quickly and reliably. This computer science course is a bottom-up exploration of the abstractions, principles, and techniques used in the design of digital and computer systems. If you have a rudimentary knowledge of electricity and some exposure to programming, roll up your sleeves, join in and design a computer system!

This is Part 1 of a 3-part series on digital systems, teaching the fundamentals of digital circuit design and is based on a course offered by the MIT Department of Electrical Engineering and Computer Science. Topics include digital encoding of information, principles of digital signaling; combinational and sequential logic, implementation in CMOS, useful canonical forms, synthesis; latency, throughput and pipelining.

Using your browser for design entry and simulation, you’ll get to design and debug circuits at both the transistor- and gate-level, culminating in the creation of a 32-bit arithmetic and logic unit.

Learner Testimonial

“This course is like a dream coming true...as kid (10 - 12 years) I was already building circuits and reading books about Digital Circuits. Due to all kind of circumstances I never got to pursue a study and career in electronics ...now I am almost 50... I see this as a second chance. Thank you very very much for this awesome course. One of the best, (if not the best) MOOCs I've ever taken.” -- Previous Student

### Computation Structures 2: Computer Architecture

Starts : 2016-11-29
edX Free English Computer Science EdX Electronics Engineering MITx

Digital systems are at the heart of the information age in which we live, allowing us to store, communicate and manipulate information quickly and reliably. This computer science course is a bottom-up exploration of the abstractions, principles, and techniques used in the design of digital and computer systems. If you have a rudimentary knowledge of electricity and some exposure to programming, roll up your sleeves, join in and design a computer system!

This is Part 2 of a 3-part series on digital systems, teaching the fundamentals of computer architecture and is based on a course offered by the MIT Department of Electrical Engineering and Computer Science. Topics include instruction set architectures and assembly language, stacks and procedures, 32-bit computer architecture, the memory hierarchy, and caches.

Using your browser for design entry and simulation, you’ll implement a 32-bit computer using our gate library and write assembly language programs to explore the hardware/software interface.

Learner Testimonial

“If you look back, we've done sooooo much: assembly programming, stack crawling (detective work), building a 32-bit computer, for crying out loud, and also learnt about caches as the cherry on top (which really helped me because I always had trouble understanding how temporary memory worked). And to top it off, they're promising us more exciting courses in the future.” -- Previous Student

### Computation Structures 3: Computer Organization

Starts : 2017-02-28
edX Free English Computer Science EdX Electronics Engineering MITx

Digital systems are at the heart of the information age in which we live, allowing us to store, communicate and manipulate information quickly and reliably. This computer science course is a bottom-up exploration of the abstractions, principles, and techniques used in the design of digital and computer systems. If you have a rudimentary knowledge of electricity and some exposure to programming, roll up your sleeves, join in and design a computer system!

This is Part 3 of a 3-part series on digital systems, providing an introduction to the hardware/software interface and is based on a course offered by the MIT Department of Electrical Engineering and Computer Science. Topics include pipelined computers, virtual memories, implementation of a simple time-sharing operating system, interrupts and real-time, and techniques for parallel processing.

Using your browser for design entry and simulation, you’ll optimize your processor design from Part 2 for size and speed, and make additions to a simple time-sharing operating system.

Learner Testimonial

"Out of the many edX courses I have taken, the first two parts of 6.004x were clearly the best. I am looking forward to the third part.” -- Previous Student

### Computational Investing, Part I

Starts : 2014-09-12
Coursera Free Popular Closed [?] Business English Artificial Intelligence Computer Science Economics & Finance

Find out how modern electronic markets work, why stock prices change in the ways they do, and how computation can help our understanding of them.  Build algorithms and visualizations to inform investing practice.

### Computational Neuroscience

Starts : 2015-05-01
Coursera Free Closed [?] Computer Sciences English Artificial Intelligence Biology & Life Sciences Computer Science Engineering Mathematics Medicine

Understanding how the brain works is one of the fundamental challenges in science today. This course will introduce you to basic computational techniques for analyzing, modeling, and understanding the behavior of cells and circuits in the brain. You do not need to have any prior background in neuroscience to take this course.

### Computational Photography

Starts : 2013-03-25
Coursera Free Computer Sciences English Artificial Intelligence Computer Science Information Tech & Design

In this course you will learn about the basics of how computation has impacted the entire workflow of photography (i.e., from how images are captured, manipulated and collaborated on, and shared).

### Computational Probability and Inference

Starts : 2016-09-12
edX Free English Computer Science Data Analysis & Statistics EdX Engineering MITx

Probability and inference are used everywhere. For example, they help us figure out which of your emails are spam, what results to show you when you search on Google, how a self-driving car should navigate its environment, or even how a computer can beat the best Jeopardy and Go players! What do all of these examples have in common? They are all situations in which a computer program can carry out inferences in the face of uncertainty at a speed and accuracy that far exceed what we could do in our heads or on a piece of paper.

In this data analysis and computer programming course, you will learn the principles of probability and inference. We will put these mathematical concepts to work in code that solves problems people care about. You will learn about different data structures for storing probability distributions, such as probabilistic graphical models, and build efficient algorithms for reasoning with these data structures.

By the end of this course, you will know how to model real-world problems with probability, and how to use the resulting models for inference.

You don’t need to have prior experience in either probability or inference, but you should be comfortable with basic Python programming and calculus.

“I love that you can do so much with the material, from programming a robot to move in an unfamiliar environment, to segmenting foreground/background of an image, to classifying tweets on Twitter—all homework examples taken from the class!” – Previous Student in the residential version of this new online course.

### Computational Thinking and Big Data

Starts : 2017-09-08
edX Free English AdelaideX Computer Science Data Analysis & Statistics EdX

Computational thinking is an invaluable skill that can be used across every industry, as it allows you to formulate a problem and express a solution in such a way that a computer can effectively carry it out.

In this course, part of the Big Data MicroMasters program, you will learn how to apply computational thinking in data science. You will learn core computational thinking concepts including decomposition, pattern recognition, abstraction, and algorithmic thinking.

You will also learn about data representation and analysis and the processes of cleaning, presenting, and visualizing data. You will develop skills in data-driven problem design and algorithms for big data.

The course will also explain mathematical representations, probabilistic and statistical models, dimension reduction and Bayesian models.

You will use tools such as R, MOA and data processing libraries in associated language environments.

### Computer Architecture

Starts : 2014-09-20
Coursera Free Closed [?] Computer Sciences English Computer Science Engineering Systems & Security

In this course, you will learn to design the computer architecture of complex modern microprocessors.

### Computer Forensics

Starts : 2017-05-23
edX Free English Computer Science EdX RITx

Digital forensics involves the investigation of computer-related crimes with the goal of obtaining evidence to be presented in a court of law.

In this course, you will learn the principles and techniques for digital forensics investigation and the spectrum of available computer forensics tools. You will learn about core forensics procedures to ensure court admissibility of evidence, as well as the legal and ethical implications. You will learn how to perform a forensic investigation on both Unix/Linux and Windows systems with different file systems. You will also be guided through forensic procedures and review and analyze forensics reports.

This offering is part of the RITx Cybersecurity MicroMasters Program that prepares students to enter and advance in the field of computing security.

### Computer Graphics

Starts : 2017-06-01
edX Free Computer Sciences English Computer Science EdX UC San DiegoX

Today, computer graphics is a central part of our lives, in movies, games, computer-aided design, virtual reality, virtual simulators, visualization and even imaging products and cameras. This course, part of the Virtual Reality (VR) Professional Certificate program, teaches the basics of computer graphics that apply to all of these domains.

Students will learn to create computer-generated images of 3D scenes, including flybys of objects, make a real-time scene viewer, and create very realistic images with raytracing. We will start with a simple example of viewing a teapot from anywhere in space, understanding the basic mathematics of virtual camera placement. Next, you will learn how to use real-time graphics programming languages like OpenGL and GLSL to create your own scene viewer, enabling you to fly around and manipulate 3D scenes. Finally, we will teach you to create highly realistic images with reflections and shadows using raytracing.

This course runs for 6 weeks and consists of four segments. Each segment includes an individual programming assignment:

1. Overview and Basic Math (Homework 0: 10% of grade)
2. Transformations (Homework 1: 20% of grade)
3. OpenGL and Lighting (Homework 2: 35% of grade)
4. Raytracing (Homework 3: 35% of grade)

This term, students who earn a total score of 50% or greater will have passed the course and may obtain a certificate from UC San DiegoX.

### Computer Networks

Starts : 2014-01-06
Coursera Free Computer Sciences English Computer Science Engineering Information Systems & Security Tech & Design

The Internet is a computer network that millions of people use every day. Understand the design strategies used to solve computer networking problems while you learn how the Internet works.

### Computer Networks and the Internet

Starts : 2017-06-26
edX Free English Communication Computer Science EdX KironX

The Internet has become integral to our daily lives. Despite its importance to users, most have only a general idea of how it works. If you’re eager to learn more about the Internet and computer networks in general, this course is for you! This course was created in collaboration with the Lübeck University of Applied Sciences with support from the German Federal Ministry of Education and Research (BMBF).

In this course, you will learn about technologies that you use at home like Wireless LAN. We will also illustrate how the Internet works on a global scale and investigate the role of major protocols; in particular the Internet Protocol (version 4 and version 6) and its helper protocols (e.g., ICMP, ARP, DHCP).

You’ll learn how the protocols TCP and UDP are used to realize applications. Out of the many applications that the Internet has, the Hypertext Transfer Protocol is focused on as the lead example since it is the main protocol for the Web.

Key tools will be introduced and used, including the network protocol analyzer Wireshark, the network emulators eNSP and WANem, command line tools ping and traceroute, Firefox browser Add-Ons like IPvFox, and many test web pages.

This course uses videos and texts to provide an overarching foundation, augmented with practical exercises so that you can experiment and explore on your own.

A portion of the profit from verified certificates in this course will go toward Kiron Open Higher Education. Kiron enables access to higher education and successful learning for refugees through digital solutions.