IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage Java Discussion :

Stockage de données


Sujet :

Langage Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Par défaut Stockage de données
    Bonjour à tous,

    je dois coder une application qui permet de compresser des fichiers textes. J'ai de "bonnes" bases en Java, c'est-à-dire celle vue en cours.

    En fait, je me posais une question, comment stocker efficacement toutes mes données? En fait, à chaque caractère du fichier est associé une probabilité ( la fréquence d'apparition ) ainsi qu'un code correspondant ( le code compact associé ). J'ai pensé à une Collection de prime abord, seulement, n'ayant que peu vu cette interface, je me demandais si je faisais le bon choix, et surtout, comment l'utiliser?

    J'utilise la version J2SE (1.5) de Java

    C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

    Installation de Code::Blocks sous Debian à partir de Nightly Builds

  2. #2
    Membre Expert
    Profil pro
    Fabrication GED
    Inscrit en
    Octobre 2005
    Messages
    1 405
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Fabrication GED

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 405
    Par défaut
    pour une compression classique, tu peux utiliser la package java.util.zip pour zipper tes fichiers plutôt que de coder toi-même la compression ? non ?

  3. #3
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Par défaut
    Et non, car cela fait parti d'un projet donné en cours

    On a le choix du langage, mais pas le choix de l'algo.

    Des idées pour stocker mes données? ( un genre de tableau ou je peux mettre <lettre, nb_utilisation, proba, code> )

    C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

    Installation de Code::Blocks sous Debian à partir de Nightly Builds

  4. #4
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Par défaut
    ben à priori il te faut une table associative de type <clé,valeur> (ici <Char, Object[]> par exemple)

    Donc HashMap est le plus simple.
    Tu peux utiliser le TreeMap si tu veux que tes clés soient ordonnées (ordre alphabétique dans ton cas je suppose)

    Tu a également des implémentations avec des Set : HashSet et TreeSet. Plus restrictif et j'imagine plus adapté à ton cas.

    Tu as un petit article ici pour plus de précisions. Sinon un petit tour sur un moteur de recherche pourrait également t'aider à faire le choix.

  5. #5
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Par défaut
    En fait, je ne cherche pas à ce qu'elles soient ordonnées alphabétiquement, ça n'a aucune importance.

    Par contre ta solution ne me permettrait que de stocker que 2 des paramètres sur les 4 que je veux stocker, non?

    Je le reprécise, mais pour une lettre (enfin tout caractère du texte) j'ai :
    • son nombre d'apparition dans le texte (pour éviter les doublons)
    • sa probabilité
    • son code


    C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

    Installation de Code::Blocks sous Debian à partir de Nightly Builds

  6. #6
    in
    in est déconnecté
    Membre Expert Avatar de in
    Profil pro
    Inscrit en
    Avril 2003
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Localisation : France, Finistère (Bretagne)

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 612
    Par défaut
    Citation Envoyé par buchs
    Par contre ta solution ne me permettrait que de stocker que 2 des paramètres sur les 4 que je veux stocker, non?
    Citation Envoyé par in (mais c'était pas clair)
    ici <Char, Object[]> par exemple
    Donc tu as deux solutions. Soit comme le propose peyo_le_fou tu utilise un objet à toi : c'est plus propre et plus évolutif, soit un tableau d'object (par exemple) et la tu te casses pas la tête (mais si les infos à stocker évoluent ça va te géner)

    En gros tu devrais utiliser une collection comme
    HashMap<Character, LesInfosCorrespondantes>

    (ou avec l'implémentation avec le Set, à toi de voir)

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 28
    Par défaut Arbre de Huffman
    Jai eu un projet similaire à réaliser et ilnous a été demander faire un arbre de Huffman. Je me rapple plus des subtilité mais ca marché plutot bien.

    http://en.wikipedia.org/wiki/Huffman_coding

    Voila

  8. #8
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Par défaut
    Citation Envoyé par peyo_le_fou
    Jai eu un projet similaire à réaliser et ilnous a été demander faire un arbre de Huffman. Je me rapple plus des subtilité mais ca marché plutot bien.

    http://en.wikipedia.org/wiki/Huffman_coding

    Voila
    Oui, j'ai déjà lu cette page, de plus, on a étudié Huffman en cours, mais la n'est pas le souci (de tte façon on doit implémenter un algorithme légèrement différent de celui de Huffman). Mon problème est juste de savoir quoi utiliser pour stocker mes données
    C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

    Installation de Code::Blocks sous Debian à partir de Nightly Builds

  9. #9
    Rédacteur
    Avatar de Arnaud F.
    Homme Profil pro
    Développeur COBOL
    Inscrit en
    Août 2005
    Messages
    5 183
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Développeur COBOL
    Secteur : Finance

    Informations forums :
    Inscription : Août 2005
    Messages : 5 183
    Par défaut
    Merci, je teste de suite
    C'est par l'adresse que vaut le bûcheron, bien plus que par la force. Homère

    Installation de Code::Blocks sous Debian à partir de Nightly Builds

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Sql] Stockage de données compressées
    Par choubiroute dans le forum Oracle
    Réponses: 5
    Dernier message: 08/03/2006, 15h46
  2. Dilemme : stockage de données en mémoire
    Par The Dark Lewis dans le forum C++Builder
    Réponses: 3
    Dernier message: 30/09/2005, 12h28
  3. Stockage de données
    Par moa378 dans le forum OpenGL
    Réponses: 16
    Dernier message: 26/05/2005, 14h34
  4. Stockage de données cartographiques en BDD
    Par Mack.51 dans le forum Décisions SGBD
    Réponses: 3
    Dernier message: 16/06/2004, 12h48
  5. Stockage de données & lecture d'un fichier texte
    Par petitours dans le forum C++Builder
    Réponses: 6
    Dernier message: 13/03/2004, 14h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo