I have a homework task where I need to determine which sorting algorithms are implemented in a .jar file provided by my teacher. Obviously I need to design my own tests to do this, so I was doing a bit of research on best/worst case scenarios but what I found was a bit unclear. EDIT: We are supposed to determine the time complexity of each function call.

Basically my question is, is there a standard best/worst case for sorting algorithms? We are using vectors as the item that needs to be sorted, so I was thinking a vector where all elements are the same would be the worst case scenario, and that a vector filled with randomly generated numbers would be the average scenario, and the best case scenario would be on an already sorted vector, but I would appreciate any input from more experienced coders.

And if you think there is anything else I need to consider, by all means tell me :)