Get Started with Algorithms and Data Structures in Swift 5
 2 hours ondemand video
 9 articles
 Full lifetime access
 Access on mobile and TV
 Assignments
 Certificate of Completion
Get your team access to Udemy's top 3,000+ courses anytime, anywhere.
Try Udemy for Business Learn how to write elegant and efficient code from a leading expert

Cut down on your development time

Get ready for technical job interviews
 Gain a working knowledge of algorithmic thinking
 Learn how to improve the performance of existing code
 Understand the popular sorting algorithms and implement them from scratch
Hi,
I’m Karoly Nyisztor and welcome to Introduction to Algorithms and Data Structures in Swift.
Let's check whether you've got all it takes to enjoy and benefit from this course.
Still undecided? Here's why you should learn about algorithms and data structures.
In this section we are going to talk about computational complexity. The BigO notation is a mathematical model used in computer science to describe the efficiency of algorithms as a function of their input size.
The best way to understand the BigO thoroughly is via code examples. Therefore, we are going to illustrate each concept using live Swift coding.
In this lecture, we are going to talk about the Constant Time complexity. We'll also implement Swift functions that execute in constant time.
We'll start the study of basic sorting algorithms with the selection sort algorithm. We are going to implement it in Swift. We’ll also visualize how selection sort works and we’ll analyze the time complexity of this algorithm.
Finally,we are going back up the theory with performance tests.
Insertion sort is a basic sorting algorithm, which works by analyzing each element and inserting it into its proper place, while larger elements move one position to the right.
Insertion sort has quadratic time complexity. However, the performance of the insertion sort is largely affected by the initial order of the elements in the sequence.
 Basic programming knowledge (variables, loops, functions). This course is beginnerfriendly. Prior programming experience may be helpful, but you need not have actually worked with Swift itself.
Take a closer look at algorithms and data structures and learn how to work with them to more efficiently approach software development with Swift. "Introduction to Algorithms and Data Structures in Swift 5" is a straightforward guide to solving coding problems more efficiently.
In this comprehensive course, author Károly Nyisztor helps to familiarize yourself with algorithmic thinking and code optimization techniques. He explains each concept using easytounderstand examples. He focuses on the practical application, using handson Swift code examples you can use for reference and practice.
Throughout the course, Károly walks you through several demo applications to demonstrate the power of algorithms and the importance of picking the right solution.
Topics include:
Algorithmic thinking
The Big O notation
Constant, linear, polynomial and logarithmic time complexity
Understanding recursion and avoiding pitfalls
Case studies for finding faster solutions
Generics
Builtin Swift collection types
When to use a Set, an Array or a Dictionary?
Implementing selection sort, insertion sort, and bubble sort
Advanced sorting: quicksort and merge sort
The study of algorithms and data structures is fundamental to any programmer who plans to develop software systems that are scalable and performant.
"Introduction to Algorithms and Data Structures in Swift 5" is the perfect course for you if you're interested in bringing your Swift coding skills to the next level.
Student reviews
"LOVE this instructor! His explanations are always clear and accurate, and his pacing is spoton. Fantastic!"  Glenn
"Speed is very good for the content being taught. The size of the videos is perfect for the depth of the topic being discussed."  Nick Perkins
"Excellent clear presentation and covering the topic very well  recommended course!"  Graham Wright
"Very well made and indepth explanations. Easy to follow and a lot of visual references making it very easy to understand! Great course overall and highly recommended."  Peter West
"This course gives me a much deeper understanding of how to write efficient and effective Swift code. It addresses things not covered in the various other crash courses on iOS development, things not apparent at first. I'd published several simple apps and games already but discovered I needed this information when I started working on a much more complex app and needed to understand how to improve my app's performance, so I searched for information on that and discovered this very helpful course."  Minni K. Ang
About the Author
Károly Nyisztor is a veteran mobile developer and instructor.
He has built several successful iOS apps and games—most of which were featured by Apple—and is the founder at LEAKKA, a software development, and tech consulting company. He's worked with companies such as Apple, Siemens, SAP, and Zen Studios.
Currently, he spends most of his days as a professional software engineer and IT architect. In addition, he teaches objectoriented software design, iOS, Swift, ObjectiveC, and UML. As an instructor, his aim is to share his 20+ years of software development expertise and change the lives of students throughout the world. He's passionate about helping people reveal hidden talents, and guide them into the world of startups and programming.
You can find his courses and books on all major platforms including Amazon, Lynda, LinkedIn Learning, Pluralsight, Udemy, and iTunes.
You’ll Get Premium Support
As a student of this course, you’ll get personalized attention and support.
Our 30day 100% moneyback guarantee
If you aren't satisfied with your purchase, we'll refund you your money  no questions asked! We want to make sure you're completely satisfied with the course. That's why we're happy to offer you this moneyback guarantee.
Go ahead and click the enroll button. See you in the first lesson!
 Who wants to implement better, more performant software applications
 Who wants to learn how to implement sorting algorithms from basic to advanced
 Who's interested in clean, modern Swift
 Who wants to successfully pass technical interviews