https://cyberw1ng.medium.com/demystifying-time-complexity-in-programming-understanding-efficiency-analysis-for-optimal-4a514d95fbc2