Implementar matriz esparsa 10x10

Por gentileza, alguém pode me ajudar a resolver o seguinte programa.
Implemente uma solução em java para descobrir se há (e quais) caracteres repetidos em uma matriz esparsa 10x10. Obrigada.

Posta aí o que já fez.

import java.util.ArrayList;
import java.util.List;

public class Matriz {
public static void main(String[] args) {
int[][] matriz = new int[][]{
{1,2,3,4},
{3,4,5,6},
{6,7,8,9}};
List repetidos = new ArrayList();

    //percorre a matriz, elemento por elemento
    for(int i=0; i<matriz.length; i++) {
        proximoElemento:
        for(int j=0; j<matriz[i].length; j++) {
            //caso elemento já foi marcado como repetido
            //continua para a próxima iteração
            if(repetidos.contains(matriz[i][j])) continue proximoElemento;

            //percorre novamente a matriz, elemento por elemento
            //começando do elemento atual da iteração mais externa 
            for(int i2=i; i2<matriz.length; i2++) {
                for(int j2=0; j2<matriz[i2].length; j2++) {
                    //não se compara com ele mesmo
                    if(i==i2 && j==j2) break;
                    //achamos um repetido, armazena e 
                    //continua para a próxima iteração 
                    if(matriz[i][j] == matriz[i2][j2]) {
                        repetidos.add(matriz[i][j]);
                        continue proximoElemento;
                    }
                }
            }
        }
    }

    //exibe os elementos encontrados repetidos ao menos uma vez
    for(int r: repetidos) {
        System.out.println(r);
    }
}

}
// Ocorre que essa matriz não é esparsa e nem de tamanho 10x10.