q Étape 2 : t[2] et t[6] sont comparés et éventuellement permutés.
q Étape 3 : t[3] et t[7] sont comparés et éventuellement permutés.
q Étape 4 : t[4] et t[8] sont comparés et éventuellement permutés.
q Étape 5 : t[5] et t[9] sont comparés et éventuellement permutés.
…
Le pas ne doit pas être calculé au hasard car c’est de lui que dépend l’efficacité de l’algorithme. La formule utilisée par
l’algorithme est généralement :
U (n+1) =3 Un +1 avec U 0 =0
PROGRAMME TRISHELL
VAR
cpt,n,i,j,tmp:entiers
t:tableau[1..10] d’entiers
DEBUT
cpt←10
n←0
TantQue n
n←3*n+1
FinTantQue
TanQue n<>0 Faire
n←n/3
Pour i de n à cpt-1 Faire
tmp←t[i]
j←i
TantQue j>n-1 ET t[j-n]>tmp
t[j] ←t[j-n]
j←j-n
FinTantQue
t[j] ←tmp
FinPour
FinTantQue
FIN
Soit en Java :
class chap5_trishell {
public static void main(String[] args) {
int t[]={48,17,25,9,34,12,28,1,4,98,0,33,48,10,11,9,25};
int i,j,n=0,mem,pos,cpt;
cpt=t.length;
7
4
6
9
8
1
3
2
0
5
7
1
6
9
8
4
3
2
0
5
7
1
3
9
8
4
6
2
0
5
7
1
3
2
8
4
6
9
0
5
7
1
3
2
0
4
6
9
8
5
- 7 -
© ENI Editions - All rigths reserved - Jonifar lina
114
q Étape 3 : t[3] et t[7] sont comparés et éventuellement permutés.
q Étape 4 : t[4] et t[8] sont comparés et éventuellement permutés.
q Étape 5 : t[5] et t[9] sont comparés et éventuellement permutés.
…
Le pas ne doit pas être calculé au hasard car c’est de lui que dépend l’efficacité de l’algorithme. La formule utilisée par
l’algorithme est généralement :
U (n+1) =3 Un +1 avec U 0 =0
PROGRAMME TRISHELL
VAR
cpt,n,i,j,tmp:entiers
t:tableau[1..10] d’entiers
DEBUT
cpt←10
n←0
TantQue n
FinTantQue
TanQue n<>0 Faire
n←n/3
Pour i de n à cpt-1 Faire
tmp←t[i]
j←i
TantQue j>n-1 ET t[j-n]>tmp
t[j] ←t[j-n]
j←j-n
FinTantQue
t[j] ←tmp
FinPour
FinTantQue
FIN
Soit en Java :
class chap5_trishell {
public static void main(String[] args) {
int t[]={48,17,25,9,34,12,28,1,4,98,0,33,48,10,11,9,25};
int i,j,n=0,mem,pos,cpt;
cpt=t.length;
7
4
6
9
8
1
3
2
0
5
7
1
6
9
8
4
3
2
0
5
7
1
3
9
8
4
6
2
0
5
7
1
3
2
8
4
6
9
0
5
7
1
3
2
0
4
6
9
8
5
- 7 -
© ENI Editions - All rigths reserved - Jonifar lina
114
