In this course we will look at the core data structures and algorithms used in everyday applications. We will discuss the trade-offs involved with choosing each data structure, along with traversal, retrieval, and update algorithms. This is part 1 of a two-part series of courses covering algorithms and data structures. In this part we cover linked lists, stacks, queues, binary trees, and hash tables.
What is the difference between data structure and algorithm?
Simply put, a data structure is something used for storing data and an algorithm is a series of steps taken to accompish a task and manipulate the aforementioned data.
What is the use of data structures and algorithms?
Data structures allow you to efficiently manage large amounts of data, which is key to designing an efficient algorithm, such as an internet indexing service. Ultimately data structures are a way of organizing and storing data so it can be used more efficiently.
Which language is best for data structures and algorithms?
It depends somewhat on preference, but Python and Ruby are good choices because they are high-level languages with easily readable syntax. Java is also often used for data structures and algorithms.
What will I learn in this course?
In this course you will learn the following concepts:
Types of data structures and algorithms
Traversal, retrieval, and update algorithms
Who is this course for?
This course is intended for anyone interested in learning about data structures and algorithms, and how they are frequently used in applications.
Are there prerequisites for this course?
For this course you will want to be familiar with one or multiple programming languages. If you have a general understanding of building apps, that is great, but not required.
Robert spent nearly 10 years at Microsoft creating software that made it easier for everyone else to write software. Most recently Robert worked on Team Foundation Server on the Administration and Version Control teams. Currently Robert can be found working in the utilities sector on Smart Grid technologies.