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 )
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
Voila, donc si n est le cardinal de liste, j'aimerais faire un peu mieux que O(m*n)
Merci d'avance.