Algorithme Longueur Sous Suite

Exercice corrige Algorithme :

Soit s une suite  de nombres entier positif ordonne par ordre croissant et termine par le marqueur -1. Ecrire un algorithme permettant de determiner la longueur L de la plus longue sous suite extraite de s et ne comportant que les elements identiques. Exemple : si la suite est s= 1 1 2 2 7 7 7 9  -1   L=3

 

 

 

CORRECTION

Algorithme LongueurSousSuiteIdentique;
var s: tableau d'entiers;
    n, i, longueurMax, longueurActuelle: entier;

Début
    n <- 1;
    longueurMax <- 0;

    écrire("Entrez les éléments de la suite (terminée par -1) : ");
    répéter
        lire(s[n]);
        n <- n + 1;
    jusqu'à (s[n-1] = -1);

    longueurActuelle <- 1;

    pour i de 2 à n-1 faire
        si s[i] = s[i-1] alors
            longueurActuelle <- longueurActuelle + 1;
        sinon
            si longueurActuelle > longueurMax alors
                longueurMax <- longueurActuelle;
            finsi
            longueurActuelle <- 1;
        finsi
    finpour

    écrire("La longueur de la plus longue sous-suite identique est : ", longueurMax);

Fin.

 

Aucune note. Soyez le premier à attribuer une note !

Ajouter un commentaire

Anti-spam