Il y a un algorithme dans l'examen de l'après-midi de l'examen d'ingénieur d'information de base. Je ne comprends pas même si je résous les questions du passé ... J'aimerais réellement écrire l'algorithme en Python et approfondir ma compréhension.
La dernière fois, j'ai écrit l'algorithme de Valeur maximale du tableau.
Cette fois, j'écrirai à partir de l'algorithme de ** recherche linéaire **.
#Fonction SeqSearch qui trouve la valeur spécifiée dans une recherche linéaire
def SeqSearch(A,Length,X):
Pos = -1
i = 0
#Traitement itératif
while i < Length and Pos == -1: #Signifie "pas atteint la fin du tableau" et "introuvable"
print("Pos=",Pos,"i=",i,"A[i]=",A[i]) #Résultats en route
#Traitement des succursales
if A[i] == X:
Pos = i
i += 1
return Pos
print("Résultat de l'exécution:",SeqSearch([22,55,66,11,44,77,33],7,77))
Pos= -1 i= 0 A[i]= 22
Pos= -1 i= 1 A[i]= 55
Pos= -1 i= 2 A[i]= 66
Pos= -1 i= 3 A[i]= 11
Pos= -1 i= 4 A[i]= 44
Pos= -1 i= 5 A[i]= 77
Résultat d'exécution: 5