Formation I.S.N.

Liste ordonnée

Exercice : cette liste est-elle en ordre ?

Écrire une fonction python récursive :

Entrée Une liste de nombres.
Sortie True si la liste est ordonnée croissante, False sinon.
  • un code

Une solution Python :


def estOrdonneeCroissant(L) :
	if len(L) <= 1 : return True
	else : return L[0] <= L[1] and estOrdonneeCroissant(L[1:])
	
 
print( estOrdonneeCroissant([2,5,6,7,9,10,15])  )
print( estOrdonneeCroissant([2,5,6,7,9,11,10,15])  )

Ou encore :



def estOrdonneeCroissant(L) :
	if len(L) <= 1 : return True
	else : 
		*tete, avantdernier, dernier = L
		return avantdernier <= dernier and estOrdonneeCroissant( tete + [avantdernier] )


print( estOrdonneeCroissant([2,5,6,7,9,10,15])  )
print( estOrdonneeCroissant([2,5,6,7,9,11,10,15])  )