E.g., 2016-06-04
E.g., 2016-06-04
E.g., 2016-06-04
Aug 2016

You've learned the basic algorithms now and are ready to step into the area of more complex problems and algorithms to solve them. Advanced algorithms build upon basic ones and use new ideas. We will start with networks flows which are used in more obvious applications such as optimal matchings, finding disjoint paths and flight scheduling as well as more surprising ones like image segmentation in computer vision or finding dense clusters in the advertiser-search query graphs at search engines. We then proceed to linear programming with applications in optimizing budget allocation, portfolio optimization, finding the cheapest diet satisfying all requirements, call routing in telecommunications and many others. Next we discuss inherently hard problems for which no exact good solutions are known (and not likely to be found) and how to solve them approximately in a reasonable time. We finish with some applications to Big Data and Machine Learning which are heavy on algorithms right now.

Average: 5 (3 votes)
Jul 2016

World and internet is full of textual information. We search for information using textual queries, we read websites, books, e-mails. All those are strings from the point of view of computer science. To make sense of all that information and make search efficient, search engines use many string algorithms. Moreover, the emerging field of personalized medicine uses many search algorithms to find disease-causing mutations in the human genome.

Average: 8 (3 votes)
Jun 13th 2016

Learn about the inner workings of cryptographic primitives and protocols and how to apply this knowledge in real-world applications.

Average: 3.6 (12 votes)
Jun 2016

If you have ever used a navigation service to find optimal route and estimate time to destination, you've used algorithms on graphs. Graphs arise in various real-world situations as there are road networks, computer networks and, most recently, social networks! If you're looking for the fastest time to get to work, cheapest way to connect set of computers into a network or efficient algorithm to automatically find communities and opinion leaders in Facebook, you're going to work with graphs and algorithms on graphs.

Average: 5 (2 votes)
May 10th 2016

En este curso aprenderás las herramientas más habituales de Microsoft Excel, desde lo más básico a los gráficos, funciones y tablas de datos. Este es un curso introductorio en el que aprenderemos a trabajar con Excel, el componente para hojas de cálculo de la suite ofimática de Microsoft, MS-Office.

No votes yet
May 2nd 2016

Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This two-part class is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to computational problems.

Average: 7.3 (8 votes)
May 2nd 2016

Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This two-part class is designed to train students in the mathematical concepts and process of "Algorithmic Thinking", allowing them to build simpler, more efficient solutions to computational problems.

Average: 6 (6 votes)
May 2nd 2016

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.

Average: 4.8 (6 votes)
May 2nd 2016

The course covers basic algorithmic techniques and ideas for computational problems arising frequently in practical applications: sorting and searching, divide and conquer, greedy algorithms, dynamic programming. We will learn a lot of theory: how to sort data and how it helps for searching; how to break a large problem into pieces and solve them recursively; when it makes sense to proceed greedily; how dynamic programming is used in genomic studies. You will practice solving computational problems, designing new algorithms, and implementing solutions efficiently (so that they run in less than a second).

Average: 10 (1 vote)
May 2nd 2016

This two-part course builds upon the programming skills that you learned in our Introduction to Interactive Programming in Python course. We will augment those skills with both important programming practices and critical mathematical problem solving skills. These skills underlie larger scale computational problem solving and programming.

Average: 6.4 (12 votes)
Apr 25th 2016

Have you ever wished you knew how to program, but had no idea where to start from? This course will teach you how to program in Scratch, an easy to use visual programming language. More importantly, it will introduce you to the fundamental principles of computing and it will help you think like a software engineer.

No votes yet
Apr 25th 2016

In this course you will learn a whole lot of modern physics (classical and quantum) from basic computer programs that you will download, generalize, or write from scratch, discuss, and then hand in. Join in if you are curious (but not necessarily knowledgeable) about algorithms, and about the deep insights into science that you can obtain by the algorithmic approach.

Average: 9.7 (3 votes)
Apr 25th 2016

A good algorithm usually comes together with a good data structure that allows the algorithm to manipulate the data efficiently. In this course, we consider the common data structures that are used in various computational problems. We start from the most basic data structures such as arrays, queues, stacks, trees. We discuss typical situations where such data structures arise. We then consider two ways of implementing dictionaries — hash tables and binary search trees. These data structures are heavily used in programming languages and databases. In practice, any nontrivial program uses either a hash table or a binary search tree implicitly. Although those data structures are usually built-in or implemented in a library that you use, it is crucial to understand their advantages and shortcomings to efficiently apply one or another in your programs and sometimes even extend standard implementations. Finally, we discuss data structures that allow to perform queries like extracting the minimal value or checking whether two elements belong to the same set.

No votes yet
Apr 19th 2016

Este MOOC es un curso introductorio a la teoría de juegos, en el que analizaremos por tanto las situaciones de interdependencia estratégica. Conoceremos los juegos estáticos, juegos dinámicos y juegos repetidos, analizando los posibles equilibrios que se pueden alcanzar.

No votes yet
Apr 19th 2016

Aprenderás a planificar una búsqueda desde el comienzo y a utilizar las herramientas que Internet te ofrece para encontrar lo que buscas. En un mundo virtual en el que hay cientos de millones de páginas disponibles con informacion de todo tipo, buscar en Internet de forma eficaz es una habilidad cada día más necesaria. Aprende con nosotros a separar el grano de la paja usando las herramientas disponibles y realizando las preguntas de forma adecuada.

No votes yet
Apr 18th 2016

¿Alguna vez pensaste en crear tus propios juegos de computadora, pero no tenías idea cómo hacerlo o por dónde comenzar? Este curso te enseñará a programar utilizando Scratch, un lenguaje de programación visual muy fácil de usar, y más importante aún, aprenderás los principios fundamentales de la computación para que comiences a pensar como ingeniero/a de software.

No votes yet
Self-paced

Brief introduction to the web. Does the world of the web interest you, but you don't quite know where to start? This course will bring you up to speed! No previous knowledge required. You'll discover the history of the web, different programming languages and frameworks, and what role developers play in the whole game! You'll be able to better understand the world of web development, and you'll be able to get yourself started on that career path if you like.

No votes yet
Apr 11th 2016

Learn the power of Linked Data, explore how it’s revolutionising the web and get to grips with it by writing queries in SPARQL. Linked Data, a term coined by Sir Tim Berners-Lee, is a way of publishing data online so it can be easily interlinked and managed using semantic queries. This helps the exposure and interlinking of datasets so that data can be exchanged, reused and integrated. On this course you will learn the basics of Linked Data and the Semantic Web - exploring how this new Web of Data isn’t about creating a big collection of standalone datasets, but is instead about using a common format to ensure data is interrelated.

No votes yet
Apr 11th 2016

Cryptography is an indispensable tool for protecting information in computer systems. In this course you will learn the inner workings of cryptographic systems and how to correctly use them in real-world applications. The course begins with a detailed discussion of how two parties who have a shared secret key can communicate securely when a powerful adversary eavesdrops and tampers with traffic.

Average: 5 (4 votes)
Mar 31st 2016

Transact-SQL is an essential skill for database professionals and developers working with SQL databases. This course takes you from your first SELECT statement to implementing transactional programmatic logic through a combination of expert instruction, demonstrations, and practical labs.

Average: 8.5 (2 votes)

Pages

 

Tell your friends: