Online courses directory (224)

Sort by: Name, Rating, Price
Start time: Any, Upcoming, Recent started, New, Always Open
Price: Any, Free, Paid
No votes Free Closed [?] Computer Sciences Computer Science

Cryptography is essentially the science of writing in secret code.  In data and telecommunications, cryptography has specific security requirements, such as authentication, privacy or confidentiality, integrity, and non-repudiation.  To meet these security requirements, we employ secret key (or symmetric) cryptography, public-key (or asymmetric) cryptography, and hash functions. In the first part of the course, we will review a number of different ciphers that were used before World War II.  These ciphers would be easily broken nowadays, since cryptography has advanced quickly over the past couple of decades with the advent of modern computers.  We will cover block cipher algorithms and describe the advanced encryption standard for a symmetric-key encryption adopted by the U.S. government.  We will also learn about the important MD5 and SHA-1 hash functions as well as the message authentication code. This course will focus on public key cryptography, which is best exemplified by the RSA algorithm (na…

Starts : 2018-01-04
No votes
edX Free Closed [?] English Business & Management Data Analysis & Statistics EdX GTx

Please note that the verified certificate option is not currently open for this course. Please enroll in the audit track and you will be emailed when the verified certificate option is open for enrollment.

Businesses, consumers, and societies leave behind massive amounts of data as a by-product of their activities. Leading-edge companies in every industry are using analytics to replace intuition and guesswork in their decision-making. As a result, managers are collecting and analyzing enormous data sets to discover new patterns and insights and running controlled experiments to test hypotheses.

This course, part of the Analytics: Essential Tools and Methods MicroMasters program, prepares you to understand data and business analytics and become a leader in these areas in business organizations.

It covers the methodologies, algorithms, issues, and challenges related to analyzing business data. It will illustrate the processes of analytics by allowing you to apply business analytics algorithms and methodologies to real-world business datasets from finance, marketing, and operations. The use of real-world examples and cases places business analytics techniques in context and teaches you how to avoid the common pitfalls, emphasizing theimportance of applying proper business analytics techniques.

In addition to cases, this course features hands-on experiences with data collection, analysis, and visualization using Python programs and analytics software such as SAS.

This course includes a significant analytics project.

Starts : 2002-09-01
20 votes
MIT OpenCourseWare (OCW) Free Computer Sciences Electrical Engineering and Computer Science Graduate MIT OpenCourseWare

6.263J / 16.37J focuses on the fundamentals of data communication networks. One goal is to give some insight into the rationale of why networks are structured the way they are today and to understand the issues facing the designers of next-generation data networks. Much of the course focuses on network algorithms and their performance. Students are expected to have a strong mathematical background and an understanding of probability theory. Topics discussed include: layered network architecture, Link Layer protocols, high-speed packet switching, queueing theory, Local Area Networks, and Wide Area Networking issues, including routing and flow control.

Starts : 2003-02-01
11 votes
MIT OpenCourseWare (OCW) Free Business Graduate MIT OpenCourseWare Sloan School of Management

Data that has relevance for managerial decisions is accumulating at an incredible rate due to a host of technological advances. Electronic data capture has become inexpensive and ubiquitous as a by-product of innovations such as the internet, e-commerce, electronic banking, point-of-sale devices, bar-code readers, and intelligent machines. Such data is often stored in data warehouses and data marts specifically intended for management decision support. Data mining is a rapidly growing field that is concerned with developing techniques to assist managers to make intelligent use of these repositories. A number of successful applications have been reported in areas such as credit rating, fraud detection, database marketing, customer relationship management, and stock market investments. The field of data mining has evolved from the disciplines of statistics and artificial intelligence.

This course will examine methods that have emerged from both fields and proven to be of value in recognizing patterns and making predictions from an applications perspective. We will survey applications and provide an opportunity for hands-on experimentation with algorithms for data mining using easy-to- use software and cases.

Starts : 2015-08-31
No votes
Coursera Free Closed [?] English Artificial Intelligence Computer Science Computer Science Information Software Engineering Statistics and Data Analysis

Apply the learned algorithms and techniques for data mining from the previous courses in the Data Mining Specialization to solve interesting real-world data mining challenges.

Starts : 2015-09-15
No votes
edX Free Closed [?] Computer Sciences English Computer Science EdX TsinghuaX

Data structures play a central role in computer science and are the cornerstones of efficient algorithms. Knowledge in this area has been at the kernel of related curriculums. This course aims at exploring the principles and methods in the design and implementation of various data structures and providing students with main tools and skills for algorithm design and performance analysis. Topics covered by this course range from fundamental data structures to recent research results.


This course is presented in Mandarin.



In what language will this course be offered?


Will the text of the lectures be available?

Yes. All of our lectures will have transcripts synced to the videos.

Do I need to watch the lectures live?

No. You can watch the lectures at your leisure.

Will certificates be awarded?

Yes. Online learners who achieve a passing grade in a course can earn a certificate of  mastery. These certificates will indicate you have successfully completed the course, but will not include a specific grade. Certificates will be issued by edX under the name of DelftX, designating the institution from which the course originated.

Can I contact the Instructor or Teaching Assistants?

Yes, but not directly. The discussion forums are the appropriate venue for questions about the course. The instructors will monitor the discussion forums and try to respond to the most important questions; in many cases response from other students and peers will be adequate and faster.

Is this course related to a campus course at Tsinghua?

Yes. This course corresponds to the campus courses 00240074 (elective for undergraduates of all majors) and 30240184 (required for CS undergraduates), both named Data Structures.

What is the textbook of the course?

Junhui DENG, Data Structures in C++, Sep. 2013, 3rd edn., Tsinghua University Press, ISBN: 7-302-33064-6. (in Chinese)

What is the grading breakdown?

60% - 12 problem sets

40% - 4 programming assignments


Starts : 2015-02-01
17 votes
MIT OpenCourseWare (OCW) Free Computer Sciences Electrical Engineering and Computer Science MIT OpenCourseWare Undergraduate

This is an intermediate algorithms course with an emphasis on teaching techniques for the design and analysis of efficient algorithms, emphasizing methods of application. Topics include divide-and-conquer, randomization, dynamic programming, greedy algorithms, incremental improvement, complexity, and cryptography.

Starts : 2012-02-01
No votes
MIT OpenCourseWare (OCW) Free Closed [?] Electrical Engineering and Computer Science MIT OpenCourseWare Undergraduate

Techniques for the design and analysis of efficient algorithms, emphasizing methods useful in practice. Topics include sorting; search trees, heaps, and hashing; divide-and-conquer; dynamic programming; greedy algorithms; amortized analysis; graph algorithms; and shortest paths. Advanced topics may include network flow, computational geometry, number-theoretic algorithms, polynomial and matrix calculations, caching, and parallel computing.

Starts : 2014-01-10
No votes
Coursera Free Computer Sciences English Artificial Intelligence Computer Science

We will present the state of the art energy minimization algorithms that are used to perform inference in modern artificial vision models: that is, efficient methods for obtaining the most likely interpretation of a given visual input. We will also cover the popular max-margin framework for estimating the model parameters using inference.

Starts : 2015-03-04
105 votes
Coursera Free Computer Sciences English Artificial Intelligence Computer Science

Tired of solving Sudokus by hand? This class teaches you how to solve complex search problems with discrete optimization concepts and algorithms, including constraint programming, local search, and mixed-integer programming.

Starts : 2009-09-01
11 votes
MIT OpenCourseWare (OCW) Free Computer Sciences Electrical Engineering and Computer Science Graduate MIT OpenCourseWare

Distributed algorithms are algorithms designed to run on multiple processors, without tight centralized control. In general, they are harder to design and harder to understand than single-processor sequential algorithms. Distributed algorithms are used in many practical systems, ranging from large computer networks to multiprocessor shared-memory systems. They also have a rich theory, which forms the subject matter for this course.

The core of the material will consist of basic distributed algorithms and impossibility results, as covered in Prof. Lynch's book Distributed Algorithms. This will be supplemented by some updated material on topics such as self-stabilization, wait-free computability, and failure detectors, and some new material on scalable shared-memory concurrent programming.

Starts : 2016-07-11
No votes
edX Free Closed [?] English Computer Science Data Analysis & Statistics EdX UC BerkeleyX

Machine learning aims to extract knowledge from data, relying on fundamental concepts in computer science, statistics, probability and optimization. Learning algorithms enable a wide range of applications, from everyday tasks such as product recommendations and spam filtering to bleeding edge applications like self-driving cars and personalized medicine. In the age of ‘big data’, with datasets rapidly growing in size and complexity and cloud computing becoming more pervasive, machine learning techniques are fast becoming a core component of large-scale data processing pipelines.

This statistics and data analysis course introduces the underlying statistical and algorithmic principles required to develop scalable real-world machine learning pipelines. We present an integrated view of data processing by highlighting the various components of these pipelines, including exploratory data analysis, feature extraction, supervised learning, and model evaluation. You will gain hands-on experience applying these principles using Spark, a cluster computing system well-suited for large-scale machine learning tasks, and its packages and spark.mllib. You will implement distributed algorithms for fundamental statistical models (linear regression, logistic regression, principal component analysis) while tackling key problems from domains such as online advertising and cognitive neuroscience.

Starts : 2017-05-31
No votes
edX Free Closed [?] English Biology & Life Sciences Computer Science EdX UMUC USMx

Gene sequences and the rest of the genome play an important role in determining how an organism functions normally and reacts when situations change. DNA sequences can also be used to determine relationships between organisms and form the underpinnings of the Tree of Life.

Since DNA sequences play such an important role in any organism it should not be surprising that any changes to a sequence could lead to alterations in behavior or response. For example, a small number of specific changes in DNA sequence have been shown to lead to tumor development in mammals or the production of enzymes with altered properties.

One of the jobs of a bioinformatician is to help determine where these changes are in a DNA sequence and sort out in that context what effects may result, which is usually done by aligning the sequences in question.

In this course, part of the Bioinformatics MicroMasters program, you will learn about the theory and algorithms behind DNA alignments, practice doing alignments manually, and then perform more complicated alignments using web and software based approaches.

Starts : 2004-02-01
15 votes
MIT OpenCourseWare (OCW) Free Computer Sciences Mathematics MIT OpenCourseWare Undergraduate

This course introduces students to iterative decoding algorithms and the codes to which they are applied, including Turbo Codes, Low-Density Parity-Check Codes, and Serially-Concatenated Codes. The course will begin with an introduction to the fundamental problems of Coding Theory and their mathematical formulations. This will be followed by a study of Belief Propagation--the probabilistic heuristic which underlies iterative decoding algorithms. Belief Propagation will then be applied to the decoding of Turbo, LDPC, and Serially-Concatenated codes. The technical portion of the course will conclude with a study of tools for explaining and predicting the behavior of iterative decoding algorithms, including EXIT charts and Density Evolution.

Starts : 2004-09-01
9 votes
MIT OpenCourseWare (OCW) Free Computer Sciences Electrical Engineering and Computer Science Graduate MIT OpenCourseWare

This course introduces the theory of error-correcting codes to computer scientists. This theory, dating back to the works of Shannon and Hamming from the late 40's, overflows with theorems, techniques, and notions of interest to theoretical computer scientists. The course will focus on results of asymptotic and algorithmic significance. Principal topics include:

  1. Construction and existence results for error-correcting codes.
  2. Limitations on the combinatorial performance of error-correcting codes.
  3. Decoding algorithms.
  4. Applications in computer science.

Related Content

8 votes
Udemy Free Closed [?] Lifestyle

Learn how to control your mind, with minimum willpower using Ben Franklin's 13x4 and some neat algorithms.

Starts : 2006-02-01
8 votes
MIT OpenCourseWare (OCW) Free Computer Sciences Biological Engineering Graduate MIT OpenCourseWare

This subject describes and illustrates computational approaches to solving problems in systems biology. A series of case-studies will be explored that demonstrate how an effective match between the statement of a biological problem and the selection of an appropriate algorithm or computational technique can lead to fundamental advances. The subject will cover several discrete and numerical algorithms used in simulation, feature extraction, and optimization for molecular, network, and systems models in biology.

Starts : 2017-02-21
No votes
edX Free Closed [?] English Computer Science EdX IITBombayX

Data structures provide a means to manage large amounts of data for use in databases and internet indexing services. Efficient data structures are key for designing efficient algorithms and obtaining maintainable software design.

In this Computer Science course, you will start by learning basic data types, such as numbers, and gradually build a conceptual framework for organizing and managing efficient structures.

Topics covered:

  • Basic Data Types, Notion of an Abstract Data Type
  • Mathematical Properties of Sequences
  • Special Types of Sequences: Stacks, Queues, Strings
  • Implementation of Sequence Type: Arrays and Linked Lists
  • Trees
  • Sets and Maps
  • Graphs

Preliminary understanding of implementing sequence structures such as stacks, queues, and linked lists, will also be covered.

This course is part of the Fundamentals of Computer Science XSeries Program

Starts : 2000-09-01
7 votes
MIT OpenCourseWare (OCW) Free Computer Sciences Civil and Environmental Engineering Graduate MIT OpenCourseWare

This is a foundation subject in modern software development techniques for engineering and information technology. The design and development of component-based software (using C# and .NET) is covered; data structures and algorithms for modeling, analysis, and visualization; basic problem-solving techniques; web services; and the management and maintenance of software. Includes a treatment of topics such as sorting and searching algorithms; and numerical simulation techniques. Foundation for in-depth exploration of image processing, computational geometry, finite element methods, network methods and e-business applications. This course is a core requirement for the Information Technology M. Eng. program.

This class was also offered in Course 13 (Department of Ocean Engineering) as 13.470J. In 2005, ocean engineering subjects became part of Course 2 (Department of Mechanical Engineering), and the 13.470J designation was dropped in lieu of 2.159J.

Starts : 2014-09-23
No votes
Coursera Free Computer Sciences English Computer Science Health & Society Information Physical & Earth Sciences Social Sciences Statistics and Data Analysis

This course introduces concepts, algorithms, programming, theory and design of spatial computing technologies such as global positioning systems (GPS), Google Maps, location-based services and geographic information systems. Learn how to collect, analyze, and visualize your own spatial datasets while avoiding common pitfalls and building better location-aware technologies.

Trusted paper writing service WriteMyPaper.Today will write the papers of any difficulty.