Free

# Data Structures & Algorithms in Swift

Course

Start off with a basic introduction to topics covered in this course and the overall content structure, including an explanation of expected Swift knowledge.

Start off with a basic introduction to topics covered in this course and the overall content structure, including an explanation of expected Swift knowledge.

Last Updated March 7, 2022

Prerequisites:

No experience required

## Course Lessons

Lesson 1

#### Introduction and Efficiency

Start off with a basic introduction to topics covered in this course and the overall content structure, including an explanation of expected Swift knowledge.

Lesson 2

#### List-Based Collections

Learn the definition of a list in computer science, and see definitions and examples of list-based data structures, arrays, linked lists, stacks, and queues.

Lesson 3

#### Searching and Sorting

Explore how to search and sort with list-based data structures, including binary search and bubble, merge, and quick sort. Learn how to use recursion.

Lesson 4

#### Maps and Hashing

Understand the concepts of sets, maps (dictionaries), and hashing. Examine common problems and approaches to hashing, and practice with examples.

Lesson 5

#### Trees

Learn the concepts and terminology associated with tree data structures. Investigate tree types, such as binary search trees, heaps, and self-balancing trees.

Lesson 6

#### Graphs

Examine the theoretical concept of a graph and understand common graph terms, coded representations, properties, traversals, and paths.

Lesson 7

#### Case Studies in Algorithms

Explore famous computer science problems, specifically the Shortest Path Problem, the Knapsack Problem, and the Traveling Salesman Problem.

Lesson 8

#### Technical Interviewing Techniques

Learn about the “algorithm” for answering common technical interviewing questions. Practice and get tips for giving interviewers what they’re looking for.

## Taught By The Best

### Brynn Claypoole

Instructor

Brynn is a former Udacity employee who worked as Lead Data Analyst at Udacity before joining Facebook as Data Engineer. Currently, she is working as software engineer with 10x Genomics.

### Horatio Thomas

Android Course Manager, Udacity

## The Udacity Difference

Combine technology training for employees with industry experts, mentors, and projects, for critical thinking that pushes innovation. Our proven upskilling system goes after success—relentlessly.

Demonstrate proficiency with practical projects

Projects are based on real-world scenarios and challenges, allowing you to apply the skills you learn to practical situations, while giving you real hands-on experience.

• Gain proven experience

• Retain knowledge longer

• Apply new skills immediately

Top-tier services to ensure learner success

Reviewers provide timely and constructive feedback on your project submissions, highlighting areas of improvement and offering practical tips to enhance your work.

• Get help from subject matter experts

• Learn industry best practices

• Gain valuable insights and improve your skills

4 weeks

, Intermediate

21 hours

(498)

3 months

, Intermediate

Beginner

14 hours

, Beginner

3 days

, Intermediate

3 weeks

3 hours

20 hours

, Intermediate