Occurence de chaque caracteres pour colonne

Fermé
zed - 20 oct. 2013 à 13:53
 zed - 20 oct. 2013 à 20:17
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

A voir également:

3 réponses

tksteph Messages postés 204 Date d'inscription samedi 20 mars 2010 Statut Membre Dernière intervention 3 janvier 2018 25
20 oct. 2013 à 18:04
C'est quoi la structure de donnée utilisée pour le stockage de ta matrice?
0
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
tksteph Messages postés 204 Date d'inscription samedi 20 mars 2010 Statut Membre Dernière intervention 3 janvier 2018 25
20 oct. 2013 à 19:19
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
merci
0