Algorithmic Thinking (Part 1)
About this Course
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 course builds on the principles that you learned in our Principles of Computing course and is designed to train students in the mathematical concepts and process of \"Algorithmic Thinking\", allowing them to build simpler, more efficient solutions to real-world computational problems. In part 1 of this course, we will study the notion of algorithmic efficiency and consider its application to several problems from graph theory. As the central part of the course, students will implement several important graph algorithms in Python and then use these algorithms to analyze two large real-world data sets. The main focus of these tasks is to understand interaction between the algorithms and the structure of the data sets being analyzed by these algorithms. Recommended Background - Students should be comfortable writing intermediate size (300+ line) programs in Python and have a basic understanding of searching, sorting, and recursion. Students should also have a solid math background that includes algebra, pre-calculus and a familiarity with the math concepts covered in \"Principles of Computing\".Created by: Rice University
Related Online Courses
Introduces how to measure and manage a workforce strategically, including (1) identifying the strategic work that is truly necessary to execute firm strategy; (2) investing in differentiated... more
Develop insights on navigating the innovation process from idea generation to commercialization. Build knowledge on how to create strategies to bring innovations to market. Develop an innovation... more
This is a self-paced lab that takes place in the Google Cloud console. In this lab you train and deploy a TensorFlow model to AI Platform for serving (prediction). Watch these short videos Harness... more
Forms are an essential part of modern-day workflow. They are the primary medium of collecting, validating, and storing user data to provide great user experience. React library helps in developing... more
Prepare for a career in the field of quality and process improvements and learn in-demand skills like Six Sigma methodologies, DMAIC and DMADV frameworks, and Lean tools to get job-ready in less... more