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 C++ Discussion :

Répétition de valeurs


Sujet :

Langage C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Inscrit en
    Mai 2010
    Messages
    177
    Détails du profil
    Informations forums :
    Inscription : Mai 2010
    Messages : 177
    Par défaut Répétition de valeurs
    Bonjour à tous,

    Ce sur quoi je bute pourrait passer pour trivial à certains d'entre vous.

    J'ai un vector, ex (j'ai mis ici un espace entre les occurences pour plus de clarté):

    vector a = [1,2,3, 4,5, 1,2,3, 123,3,4,5,6,7, 1,2,3, 1,2,3, 4,5, 6,7,8]

    On voit que ce vector possède des répétitions, en l'occurence 1,2,3 et 1,2,3,4,5

    J'aimerais pouvoir extraire de la chaîne ces valeurs, sachant qu'elle doivent être les plus longues possibles.

    On aurait donc 2 fois 1,2,3,4,5 et 2 fois 1,2,3

    Cela me prend la tête comme pas permis.
    J'ai vu ce sujet :
    http://stackoverflow.com/questions/9...ithin-a-string

    Mais les répétitions ne reprennent pas les valeurs les plus longues comme je le souhaite.

    Je ne demande pas un example tout fait, mais au moins une piste.
    J'utilise boost aussi.

    Une idée ?

    Merci à vous,

    A bientôt,

    LeHibou2

  2. #2
    Expert éminent

    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2007
    Messages
    5 202
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 5 202
    Par défaut
    Imagine une vieille cassette à bande.

    Sur la bande, il y a des nombres écrits.
    Tu cherche la plus longue répétition de nombres.

    Comme ta bande est installée sur deux enrouleur, tu ne vois qu'un nombre à la fois.

    Comment t'y prends-tu, sachant que tu n'as pas moyen de prendre des notes, seulement ta tête pour te souvenir d'une ou deux 'tites choses?


    Autrement dit, un programme n'est que l'automatisation pour une machine d'une solution réelle à un problème posé.

  3. #3
    Membre Expert
    Avatar de imperio
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2010
    Messages
    869
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2010
    Messages : 869
    Par défaut
    Pour te donner une petite piste, j'aurais pensé mon algo comme ça :

    tableau a_trier de taille n
    variable i = n / 2
    while i > 2
      variable x = 0
      while i + x < n
        tableau_tmp de taille i vaut les i + x premiers nombres de a_trier
        on fait les comparaisons
        x = x + 1
      i = i - 1
    
    etc...
    Je ne pense pas que ce soit la meilleure façon de faire mais ça a le mérite de répondre à ta demande je pense.

Discussions similaires

  1. Compter nombre de répétitions des valeurs dans un tableau
    Par tabrouri2000 dans le forum Collection et Stream
    Réponses: 16
    Dernier message: 21/03/2021, 20h47
  2. Réponses: 7
    Dernier message: 01/01/2013, 18h03
  3. Réponses: 5
    Dernier message: 10/03/2009, 04h17
  4. [MySQL] Boucle : répétition des valeurs précédentes
    Par mioke dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 25/03/2008, 17h38
  5. Réponses: 2
    Dernier message: 04/02/2005, 11h03

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