tower of hanoi using using substitution code example Example: tower of hanoi worst case time complexity O(2^n) [exponential time]