R, un lenguaje de programación utilizado para Estadística y Análisis de Datos, tiene la función order, que devuelve una lista con los índices necesarios para ordenar el vector original(∗).
Por ejemplo:
my_arr = [1, 3, 3, 9, 8]
# Ordered would be: [0, 1, 2, 4, 3]En palabras simples, order te indica qué elementos debes observar en tu vector original para ordenarlo. La lista my_arr[0] + my_arr[1] + my_arr[2] + my_arr[4] + my_arr[3] equivale a sorted(my_arr).
Si dos o más elementos tienen el mismo orden, se conserva su orden original. Aquí, [0, 1, 2, 4, 3] y [0, 2, 1, 4, 3] ordenarían el vector, pero solo el primero conserva el orden original de los dos 3.
Implementa la función order() para que funcione de la misma manera que en R.
order([9, 1, 4, 5, 4]) ➞ [1, 2, 4, 3, 0]
order(["z", "c", "f", "b", "c"]) ➞ [3, 1, 4, 2, 0]
order(["order", "my", "words"]) ➞ [1, 0, 2]