www.state-it.info

Gran base de respuestas a las preguntas de los desarrolladores
Header decor

la Sostenibilidad de la ordenación. Cómo ordenar una matriz de los distintos campos?

kvendingoldo 2015-02-13 16:53:15

hola a todos! Encontré con un problema : se debe ordenar una matriz de apellidos y de nombres por orden alfabético(si se repiten los nombres de ordenar por apellido). El problema es que es necesario hacerlo, de ordenación de la Shell, y ella, como no sostenible. Dime, ¿cómo puede ser?
La propia ordenación tengo esto:

template <typename T, typename Cmp>
void shellSort( vector<T> &arr, Cmp const &cmp )
    {
 	int size=arr.size();
    int step = size / 2;// шаг.
    while (step > 0)
    {
      for (int i = 0; i < (size - step); i++)
                {
                    int j = i;
                    while (j >= 0 && cmp(arr[j], arr[j + step]))
                    {
                        T temp = arr[j];
                        arr[j] = arr[j + step];
                        arr[j + step] = temp;
                        j--;
                    }
                }
                step = step / 2;
            }   
    }

Total answers: 1

gbg 2015-02-13 17:26:02

Piense en el nombre/apellido como una clave de comparación (una cadena de caracteres).

Preguntas relacionadas:

Footer decor

© www.state-it.info | Base of answers to questions for developers and programmers.