time complexity
are there any resources that you advice to get more in depth understanding of time complexity analysis farther than the explanation of the concept and or digram built on the actual execution time of the code for various inputs, i want build the skill to deal with recursive functions time complexity analysis with different types of data like lists and dictionaries with different conditions here are some examples of resources i used https://www.youtube.com/watch? v=6aDHWSNKlVw&t=1480s&pp=ygUgdGltZSBjb21wbGV4aXR5IG9mIHRoZSBhbGdvcml0aG0%3D https://www.geeksforgeeks.org/understanding-time-complexity-simple-examples/i find the answer in the link directly under especially helpful yet such formality is something that i could not find resources to build i dont actually need this much formality yet for particular uneasy to determine algorithms such approach is useful since the rest can be guessed easily in retrospect https://stackoverflow.com/questions/2709106/time-complexity-of-a-recursive-algorithm https://www.geeksforgeeks.org/complexity-analysis-of-binary-search/ https://stackoverflow.com/questions/360748/computational-complexity-of-fibonacci-sequence for example for this i made the guess of o(log(n)) since it is pretty similar to the binary search when the length of the list provided is large ,(have not made a formal proof or checked with a digram but this is what i found for now) def f(lst): if len(lst) <= 1: return 1 mid = len(lst)//2 return len(lst) + f(lst[:mid])