To describe how long an algorithm takes to run we use something called Big O Notation. Since hardware and software runtime environments can vary widely, Big O Notation provides us with a uniform way of comparing efficiencies. For example, the code in your iOS app will definitely run faster on...

So you’ve read Apple’s Swift language docs, experimented in bunch of Swift Playgrounds, and have sucessfully built some small iOS apps…what’s the next? In the forthcoming series of posts I intend to answer this question by teaching the basic concepts of algorithms and data structures, using examples written in Swift....