Bonjour,
je cherche à décaler tous les éléments d'une liste, de n pas vers la droite mais je n'ai trouvé que l'algo naîf (j'ai honte d'être aussi nul )
Voila, donc si n est le cardinal de liste, j'aimerais faire un peu mieux que O(m*n)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 decalage(liste,m) : debut | pour i de 0 à m faire | | pour j 0 à card(liste) de faire | | | si j = card(liste)-1 faire | | | | liste[0] <- liste[card(liste)-1] | | | sinon | | | | liste[j+1] <- liste[j] | | | fin si | | fin pour | fin pour fin
Merci d'avance.
Partager