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

Algorithmes et structures de données Discussion :

Algo traitement plages d'horaires.


Sujet :

Algorithmes et structures de données

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2013
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

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

    Informations forums :
    Inscription : Juin 2013
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Algo traitement plages d'horaires.
    Bonjour à tout ce qui vont lire ce post, j'ai un soucis sur une application qui me bloque, j'ai longtemps chercher mais au final je viens récolter quelques avis.

    Pour être clair, j'ai une liste de booléen true/false ou 1,0 comme vous voulez, composé de 24 élément (1 par heure), il faut que je détermine si ils se suivent ou pas (regroupement par intervalle).
    Par exemple: [0,0,1,1,1,0,0] dont les index détermine les heures 0 => 0, 0 => 1, 0 => 2, 1 = > 3 etc...
    donc de 0 a 2 h c'est false, de 2 à 5 c'est true et de 5 a 7 c'est false.

    Il me faut juste un algo qui me renverai ceci:
    True: 2-5.
    False: 0-2, 5-7.

    J'ai déjà envisagé plusieurs solutions, recursivité, tableau bi-dimentionnel etc, mais a chaque fois des problemes se posent...
    Merci pour ceux qui m'aideront .

    Ps: si vous souhaiter une autre entrée qu'une liste de 24 c'est faisable (ex un tableau etc...).

  2. #2
    Membre émérite
    Avatar de prgasp77
    Homme Profil pro
    Ingénieur en systèmes embarqués
    Inscrit en
    Juin 2004
    Messages
    1 306
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Eure (Haute Normandie)

    Informations professionnelles :
    Activité : Ingénieur en systèmes embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juin 2004
    Messages : 1 306
    Points : 2 466
    Points
    2 466
    Par défaut
    Salut Logiq et bienvenu sur les forums développez. Ton problème (à moins que je ne l'ai mal compris) est plutôt trivial. J'utilise des tableaux pour faire simple, mais une structure ne permettant l'accès qu'au dernier élément fera très bien l'affaire. Il est aussi possible de simplifier l'algo.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    entrée h : tableau de 24 booléens
    sortie : t, f : deux tableaux de couple d'entiers.
    variables : a, b, n : entiers
    Tu initialises t et f à {}
    Pour i allant de 0 à 23
    	Si h[i] Alors
    		Si t = {} Alors
    			t = {(i,i)}
    		Sinon
    			n ← taille(t)
    			(a, b) ← t[n-1]
    			Si b = i-1 Alors
    				t[n-1] ← (a, i)
    			Sinon
    				t[n] ← (i, i)
    			Fin si
    		Fin si
    	Sinon
    		pareil mais avec f
    	Fin si
    Fin pour
    Cdlt,
    -- Yankel Scialom

Discussions similaires

  1. différence d'heure sur plage d'horaire
    Par raymonizuka dans le forum Excel
    Réponses: 7
    Dernier message: 18/06/2008, 11h16
  2. Découpage en plage d'horaire
    Par nander dans le forum Collection et Stream
    Réponses: 3
    Dernier message: 14/04/2008, 15h30
  3. Fixer la plage d'horaire d'un utilisateur
    Par big1 dans le forum Windows XP
    Réponses: 1
    Dernier message: 18/02/2008, 21h27
  4. Réponses: 3
    Dernier message: 16/01/2008, 08h24

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