How can we insert an item into an array efficiently?

iOS Software Engineer (Swift, SwiftUI) with +4 years of experience working with international teams and clients, Published +10 apps, seeking to build world-class apps
Search for a command to run...

iOS Software Engineer (Swift, SwiftUI) with +4 years of experience working with international teams and clients, Published +10 apps, seeking to build world-class apps
No comments yet. Be the first to comment.
Swift 5.7 comes with a new feature that saves our time To unwrap an optional value we used to do if let username = username { print(usernname) } After Swift 5.7 new shorthand, we can easily do if let username { print(usernname) } Without repeatin...
Sometimes we have to insert items to the first indices of the array
The easiest solution can be:
var array = [1,2,3,4,5,6,7,8,9]
array.insert(0, at: 0)
print(array)
this solution is going to work, but is it efficient?
Looking into the Apple Documentation of the insert function you can see the complexity of the insert function is O(n) which means all elements of the array will be shifted to insert the item to index 0
So the solution is not efficient, so how can we improve it?
One possible solution is using reverse function whose complexity is O(1) so it's very efficient
var array = [1,2,3,4,5,6,7,8,9]
array.reverse()
array.append(0)
array.reverse()
print(array)
That is it!