How does one use variable length arguments for function calls in Python?
Using either *args or **kwargs. *args is for lists, tuples, and comma separated values in a function call. **kwargs is for keyword arguments, such as maps or values in a function call that are assigned to a certain key.
Why can we not create a generic array without the use of typecasting and Array native methods?
Because Java's type erasure hides run-time type argument to generic classes, such that one can reference arrays only through the erasure of the generic type, i.e: for generic $$<T extends Foo>$$ one should use an array defined as $$Fooarr;$$
What is the minimum time complexity for a worst-case performance of sorting a given array of size n, and what is the algorithm with this bound.
Minimum worst-case time complexity: $$O(n\log n)$$ This is in algorithms such as Merge Sort and Timsort