Files
TD4_DEV51_amary/Tri.py

56 lines
1.1 KiB
Python
Raw Permalink Normal View History

2025-10-15 12:14:48 +02:00
# Définition de Fonctions
def Tri(Tableau, DIMENSIONS, NVALEURS):
liste = Tableau
for d in range(0, DIMENSIONS-2):
liste = liste[0]
print(liste)
# Tri des tableaux feuilles
for f in range(0, NVALEURS):
TriSelection(liste[f])
# Suite - Seulement à deux dimensions
tabsomme = [0]*NVALEURS
for n in range(0, NVALEURS):
tabsomme[n] = sum(liste[n])
change = True
while change:
change = False
for i in range(0, NVALEURS-1):
if tabsomme[i] > tabsomme[i+1]:
tmp = tabsomme[i]
tabsomme[i] = tabsomme[i+1]
tabsomme[i+1] = tmp
tmp = Tableau[i]
Tableau[i] = Tableau[i+1]
Tableau[i+1] = tmp
def TriSelection(tableau):
"""Implémentation classique d'un tri par sélections."""
taille = len(tableau)
for i in range(0, taille-1):
idmin = i
for j in range(i+1, taille): # Parcours de la partie non-trié
if tableau[j] < tableau[idmin]:
idmin = j
if idmin != i :
tmp = tableau[i]
tableau[i] = tableau[idmin]
tableau[idmin] = tmp
# Programme Principal
DIMENSIONS = 2
NVALEURS = 3
Tableau = [ [0,3,2], [9,4,5], [4,1,3] ]
Tri(Tableau, DIMENSIONS, NVALEURS)
print(Tableau)