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

Calcul scientifique Python Discussion :

Fonction de permutations aléatoires


Sujet :

Calcul scientifique Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2016
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2016
    Messages : 36
    Par défaut Fonction de permutations aléatoires
    Bonjour je dois faire une fonction RandomPerm(n,k) qui renvoie une permutation aléatoire de longueur n obtenue à partir de T = [1 ... n] en effectuant k échanges de T[i] et T[i-1], où chaque i est tiré aléatoirement entre 1 et n-1.

    Je ne comprend pas ce que ca veut dire "en effectuant k échanges de T[i] et T[i-1]".

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 761
    Par défaut
    Salut,

    Citation Envoyé par delisiouz Voir le message
    Je ne comprend pas ce que ca veut dire "en effectuant k échanges de T[i] et T[i-1]".
    répéter k fois: choisir i, permuter/échanger T[i] et T[i-1].

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2016
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2016
    Messages : 36
    Par défaut
    Donc ca ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    def randomPerm(n, k) :
        l = list(range(1, n + 1))
        for i in range(n):
            r=randint(i,n-1)
            if i!=r:
                l[i],l[r]=l[r],l[i]
                p=k
                while p>=0:
                    l[i],l[r]=l[r],l[i]
                    p-=1
        return l

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 761
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 761
    Par défaut
    Citation Envoyé par delisiouz Voir le message
    Donc ca ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    def randomPerm(n, k) :
        l = list(range(1, n + 1))
        for i in range(n):
            r=randint(i,n-1)
            if i!=r:
                l[i],l[r]=l[r],l[i]
                p=k
                while p>=0:
                    l[i],l[r]=l[r],l[i]
                    p-=1
        return l
    L'énoncé mentionne T, n, k, i et on se retrouve avec des r, p, l...
    Ceci dit, côté Python vous maîtrisez tout ce qu'il faut. Seule votre interprétation de l'énoncé pourrait se discuter mais elle est écrite en français pas en Python: vous verrez bien le corrigé.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Membre averti
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2016
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Avril 2016
    Messages : 36
    Par défaut
    J'ai juste pris p pour ne pas modifier k

Discussions similaires

  1. [Tableaux] Permutation aléatoire de deux <table>
    Par s-c-a-r-a dans le forum Langage
    Réponses: 2
    Dernier message: 19/01/2009, 10h42
  2. Fonction pour lignes aléatoires?
    Par cucard51 dans le forum Débuter
    Réponses: 4
    Dernier message: 23/04/2008, 16h13
  3. Fonction de génération aléatoire gaussienne
    Par Linio dans le forum Langage
    Réponses: 5
    Dernier message: 13/08/2007, 12h57
  4. Réponses: 2
    Dernier message: 13/12/2006, 13h33
  5. [HQL] Fonction de recherche aléatoire (random) ?
    Par Invité dans le forum Hibernate
    Réponses: 9
    Dernier message: 02/08/2006, 13h34

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