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

Our specialization in Piling Construction and Practices comprises three meticulously designed courses, each providing essential knowledge and practical skills in various aspects of piling.\\n\\nThe... more
Get the tools you need to analyze, evaluate and recommend specific actions organizations can take to grow their value and avoid common growth pitfalls. In this course, developed at the Darden... more
In this course the learner will be shown how to generate forecasts of game results in professional sports using Python. The main emphasis of the course is on teaching the method of logistic... more
Code and apply your first Terraform configuration without installing anything! This course is designed for learners with limited knowledge of cloud computing, providing a solid foundation of cloud... more
In this project, we will analyze life expectancy data by performing data wrangling & exploratory data analysis (EDA). Pandas is a powerful open source data analysis tools in python. Exploratory... more

CONTINUE SEARCH

FOLLOW COLLEGE PARENT CENTRAL