Ordenando linhas de uma Matriz em Ordem Alfabetica

Tenho uma duvida e queria saber se vocês podem me ajudar, é o seguinte:
Tenho um exercício em que o usuário digita os nomes dos alunos e em seguida as notas.Ai isso é inserido numa matriz onde cada nome é inserido numa linha e as notas a frente (nas colunas).
Como que faço para colocar ela em ordem alfabética???Mover a linha e as notas dos alunos até ficar em ordem.

Como faço isso???
exe de matriz:

João-------------4| 6| 7 |8
Maria------------7| 5| 9 |5
Leo--------------9| 8| 7 | 6
Ronaldo--------2 | 5| 6 | 7
Chico Bento----6| 6| 7| 5

Você ja fez algum algoritmo de ordenação de vetor?
Creio que seria a mesma coisa, só que usando somente o nome como discriminador de ordenação.

Fiz um algoritmo de ordenação em vetores unidimensionais e com numeros para ordenar em ordem crescente e decrescente.
Nesse caso é uma matriz e com Strings. Como que eu utilizo ele para esse caso???

Insertion sort:

n = qtd de elementos do vetor;
para i = 1; i < n; i++
      auxiliar = vetor[i];
      para j = i - 1; j >= 0 && vetor[j] > auxiliar; j--
            vetor[j+1] = vetor[j];
            vetor[j] = aux;

Entendi para que serve esse algoritmo de Insertion Sort.Mais ainda não entendi como poderei utilizar ele com Strings
e e matrizes.
Ele ira pegar o numero equivalente do char da String???

Cara é o seguinte, na classe string tem um metodo chamado compareTo(another String).
Estuda como funciona esse metodo e vai ficar facinho fazer a ordenação.

Dica: crie um metodo chamado

void sort(String[] s){ faz o insertion sort aki pra ordenar um vetor unidimensional e inves de vc usar o vetor[j] > auxiliar, vc usa vetor[j].compareTo(auxiliar)... } public static void main(String[] args){ String[][] seuvetor; sort(seuvetor[0]); sort(seuvetor[1]); sort(seuvetor[2]); sort(seuvetor[n]); }
É só estudar esse metodo compareTo() q vc entende como faz rapidinho.

Intendi!
Eu uso o compareTo para ver qual String vem na frente de qual e uso o insertion sort para move-las. Mais você fez ai com vetor unidimensional, como faço com matriz? pq eu vou andar as linhas inteira da matriz na coluna 0 e ver qual é, mais como faço para que a linha inteira ^ ou v para que os valores(notas) vao indo de acordo com o individuo\cidadão.
Tipo. Não entendi essa parte em que você fez:

        String[][] seuvetor;  
        sort(seuvetor[0]);

pq na hora em que você colocou no método sort só [] e não [][]???

Voce entendeu errado amigo…

Nessa parte: para j = i - 1; j >= 0 && vetor[j] > auxiliar; j–
voce verifica vetor[j] > auxiliar.
com string vc faz vetor[j].compareTo(auxiliar) > 0

Ja que vc tem uma matriz ( duas dimensões ), pra obeter a primeira linha dessa matriz vc pega vetor[0], a segunda linha, vc pega vetor[1], etc.

for(int i = 0; i < n; i++)
sort(vetor[i]);