Occurence de chaque caracteres pour colonne

zed -  
 zed -
Bonjour,

je voudrais calculer les occurrences de chaque caractères pour chacune de colonne d'une matrice à deux dimension.

ex: |A A C D |
|D E F A |
|A Y F E |
|A E W D|
cette matrice n'est qu une illustration.
A savoir que la vraie matrice de mon exo je l'ai obtenu après avoir lu un fichier text de 5643 LIGNE ET 48 COLONNES.

|i..............i48|
|. |
|. |
|i5643......... |

merci

3 réponses

  1. tksteph Messages postés 208 Date d'inscription   Statut Membre Dernière intervention   25
     
    C'est quoi la structure de donnée utilisée pour le stockage de ta matrice?
    0
  2. zed
     
    c 'est un tableau de caractere, sachant que chaque ligne contient 48 lettres dans le texte, je fais la lecture et placé chaque caracteres à l'index correcpondant dans la matrice.
    char [][] matrice.

    merci
    0
  3. tksteph Messages postés 208 Date d'inscription   Statut Membre Dernière intervention   25
     
    En supposant que ton stockage(matrice) ait la même tête, voici un début de solution;


    import java.util.HashMap;
    import java.util.Map;

    /**
    *
    * @author tksteph
    */
    public class Characters {

    public static void main(String[] args) {

    char [][] matrice = {{'A','D','A','A'},{'A','E','Y','E'},{'C','F','F','W'},{'D','A','E','D'}};
    //Parcours des colonnes de la matrice:
    Map map = new HashMap();
    for(int i=0;i<matrice[0].length;i++){
    for(int j=0;j<matrice.length;j++){
    char ch = matrice[i][j];
    map.put(ch, compteurChar(matrice[i], ch));
    }
    }
    System.out.println(map);

    }
    // retourner le nombre d'occurence d'un char

    public static int compteurChar(char [] characters, char ch) {
    int compteur = 0;
    for (int i = 0; i < characters.length; i++) {
    if (characters[i]==ch) {
    compteur++;
    }
    }
    return compteur;
    }
    }

    0
    1. zed
       
      merci
      0