Ordenar objetos usando una lista predefinida de valores ordenados

e preguntaba cuál sería la forma más rápida de ordenar una matriz de objetos en el mismo orden que una matriz diferente.

Aquí hay un ejemplo en C #:

class MyClass
{
    public MyClass(int value)
    {
        this.value = value;
    }
    int value;
    public int Value
    {
        get { return value; }
        set { this.value = value; }
    }
}


    static List<int> sortedValuesList;
    static List<MyClass> objectList;

¿Cuál es la forma más rápida de ordenar objectList en el mismo orden que sortedValuesList? Puede haber varios objetos con el mismo valor.

Ya tengo un algoritmo simple que puede hacerlo, pero es O (n ^ 2) y requiere memoria adicional.

EDITAR Supongo que no está claro lo que estoy tratando de hacer. Digamos que un usuario ve una cuadrícula de datos de vendedores en la pantalla. Puede ordenarlos por cualquier columna que quiera. Ahora el usuario hace clic en un botón y se muestra una tabla de clientes. Cada cliente hace referencia a uno de los vendedores. Quiero ordenar la lista de clientes, según el orden de los vendedores en la cuadrícula de datos anterior.

Es solo una pregunta teórica ya que no necesito más rendimiento. Me preguntaba si hay algún buen algoritmo de clasificación cuando necesitas usar una tabla de búsqueda para comparar objetos.