Online courses directory (19947)
How do you optimally encode a text file? How do you find shortest paths in a map? How do you design a communication network? How do you route data in a network? What are the limits of efficient computation?
This course, part of the Computer Science Essentials for Software Development Professional Certificate program, is an introduction to design and analysis of algorithms, and answers along the way these and many other interesting computational questions.
You will learn about algorithms that operate on common data structures, for instance sorting and searching; advanced design and analysis techniques such as dynamic programming and greedy algorithms; advanced graph algorithms such as minimum spanning trees and shortest paths; NP-completeness theory; and approximation algorithms.
After completing this course you will be able to design efficient and correct algorithms using sophisticated data structures for complex computational tasks.
Kursbeschreibung
Der Kurs führt in das zentrale Gebiet der Informatik ein, auf dem alle anderen Teilgebiete aufbauen: Wie entwickele ich Software? Anhand der Programmiersprache Java werden Algorithmen zum Suchen und Sortieren vorgestellt und die dazu benötigten Datenstrukturen wie Keller, Schlange, Liste, Baum und Graph eingeführt.
Was lerne ich in diesem Kurs?
Die Teilnehmer des Kurses werden in die Lage versetzt, eine Problemstellung auf maschinelle Lösbarkeit hin zu analysieren, dafür einen Algorithmus zu entwerfen, die zugehörigen Datenstrukturen zu wählen, daraus ein Java-Programm zu entwickeln und dieses zur Lösung des Problems einzusetzen.
Welche Vorkenntnisse benötige ich?
Mathematikkenntnisse auf Oberstufenniveau.
Kursplan
| Kapitel | Thema |
|---|---|
| Kapitel 1 | Einführung |
| Kapitel 2 | Systemumgebung |
| Kapitel 3 | Java |
| Kapitel 4 | Datentypen |
| Kapitel 5 | Felder |
| Kapitel 6 | Methoden |
| Kapitel 7 | Rekursion |
| Kapitel 8 | Komplexität |
| Kapitel 9 | Sortieren |
| Kapitel 10 | Objektorientierung |
| Kapitel 11 | Abstrakte Datentypen |
| Kapitel 12 | Suchbäume |
| Kapitel 13 | Hashing |
| Kapitel 14 | Graphen |
This course is organized around algorithmic issues that arise in machine learning. Modern machine learning systems are often built on top of algorithms that do not have provable guarantees, and it is the subject of debate when and why they work. In this class, we focus on designing algorithms whose performance we can rigorously analyze for fundamental machine learning problems.
6.890 Algorithmic Lower Bounds: Fun with Hardness Proofs is a class taking a practical approach to proving problems can't be solved efficiently (in polynomial time and assuming standard complexity-theoretic assumptions like P ≠ NP). The class focuses on reductions and techniques for proving problems are computationally hard for a variety of complexity classes. Along the way, the class will create many interesting gadgets, learn many hardness proof styles, explore the connection between games and computation, survey several important problems and complexity classes, and crush hopes and dreams (for fast optimal solutions).
Experienced Computer Scientists analyze and solve computational problems at a level of abstraction that is beyond that of any particular programming language. This 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.
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.
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.
Create an automated robot that trades forex/shares/CFD's in Metatrader MT4 like High frequency/Quant/Hedge fund managers
Algorithms power the biggest web companies and the most promising startups. Interviews at tech companies start with questions that probe for good algorithm thinking.
In this computer science course, you will learn how to think about algorithms and create them using sorting techniques such as quick sort and merge sort, and searching algorithms, median finding, and order statistics.
The course progresses with Numerical, String, and Geometric algorithms like Polynomial Multiplication, Matrix Operations, GCD, Pattern Matching, Subsequences, Sweep, and Convex Hull. It concludes with graph algorithms like shortest path and spanning tree.
Topics covered:
- Sorting and Searching
- Numerical Algorithms
- String Algorithms
- Geometric Algorithms
- Graph Algorithms
This course is part of the Fundamentals of Computer Science XSeries Program:
Want to build better programs? Learn how, in this professional-level course.
Bring your programming experience, and join us for a deep dive into fundamental concepts that you can use right away. Go underneath the hood of functional algorithms and data structures, and see how they work and how to compare them. Plus, get the details on when and how to use them.
In this real-world-tested curriculum, take a look at famous algorithms and equations, and see how yours stack up. See practical demos, compare “life scenarios” to their coding counterparts, and create an app for your final project.
Add to your developer toolkit with this in-depth exploration of algorithms and data structures.
Animation is a compelling and effective form of expression; it engages viewers and makes difficult concepts easier to grasp. Today's animation industry creates films, special effects, and games with stunning visual detail and quality. This graduate class will investigate the algorithms that make these animations possible: keyframing, inverse kinematics, physical simulation, optimization, optimal control, motion capture, and data-driven methods. Our study will also reveal the shortcomings of these sophisticated tools. The students will propose improvements and explore new methods for computer animation in semester-long research projects. The course should appeal to both students with general interest in computer graphics and students interested in new applications of machine learning, robotics, biomechanics, physics, applied mathematics and scientific computing.
We will learn computational methods -- algorithms and data structures -- for analyzing DNA sequencing data. We will learn a little about DNA, genomics, and how DNA sequencing is used. We will use Python to implement key algorithms and data structures and to analyze real genomes and DNA sequencing datasets.
This is a graduate-level introduction to the principles of statistical inference with probabilistic models defined using graphical representations. The material in this course constitutes a common foundation for work in machine learning, signal processing, artificial intelligence, computer vision, control, and communication. Ultimately, the subject is about teaching you contemporary approaches to, and perspectives on, problems of statistical inference.
This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations. Part I covers basic iterable data types, sorting, and searching algorithms.
This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations.
In this course you will learn several fundamental principles of algorithm design: divide-and-conquer methods, graph algorithms, practical data structures (heaps, hash tables, search trees), randomized algorithms, and more.
In this course you will learn several fundamental principles of advanced algorithm design: greedy algorithms and applications; dynamic programming and applications; NP-completeness and what it means for the algorithm designer; the design and analysis of heuristics; and more.
Have you ever wondered about planets in other solar systems? Have you ever thought about the possibility of life elsewhere in the Universe? For the first time in human history, we know that planets around other stars not only exist, but are common!
Alien Worlds focuses on the search and characterization of planets orbiting other stars (called extrasolar planets or “exoplanets”). Over the course of nine modules, we will learn some of the techniques used to discover the thousands of known exoplanets and will discuss how we can use basic scientific tools to characterize the sizes, masses, compositions, and atmospheres of exoplanets. We will also learn about the diversity of stars in the Galaxy to understand how stellar properties affect exoplanet detection techniques and influence planetary formation and habitability.
In addition to the exploration of exoplanets, students in Alien Worlds will gain a basic understanding of light, gravity and motion, and be introduced to some of the most extreme life on planet Earth. We will hear from experts at the forefront of exoplanet science and interact with other participants and instructors through social media and online tools. Students will leave Alien Worlds with a better understanding of their place in the Universe and the skills to comprehend the wealth of new discoveries surrounding the countless worlds around distant stars.
Consejos útiles para mejorar nuestra alimentación y salud de forma sencilla en el día a día y 28 recetas anticáncer
ALISON ABC IT is a free online self-certifiable information technology (IT) course which comprehensively introduces you to IT literacy. ABC IT covers the basic concepts of computing and teaches how computing can be an everyday feature of life and work. It covers basic Microsoft Office computer applications and touch typing training.<br />
Trusted paper writing service WriteMyPaper.Today will write the papers of any difficulty.