Dans cet article, je voudrais présenter un exemple d'implémentation en Python 3 sur l'algorithme que j'ai appris en lisant "Algorithm Picture Book". L'algorithme cette fois est le tri sélectif. L'écrivain est un amateur. J'apprécierais que vous me disiez diverses choses.
Je ne suis pas familier avec Python2, mais je sais seulement que j'utilise Python3 (Est-ce Python3.6.0?). Par conséquent, le titre de l'article est Python3.
Je n'expliquerai que brièvement le problème et l'approche.
Renvoie les colonnes triées par ordre croissant pour un nombre donné de colonnes. Exemple: 4, 3, 1, 2 → 1, 2, 3, 4
Déterminez les valeurs dans l'ordre depuis le début. Trouvez la valeur minimale à partir du nombre indéterminé et amenez-la au premier plan (premier côté) en échangeant. Pour plus de détails, reportez-vous à "Algorithm Picture Book".
Exemple: Notation des nombres fixes entre [] 4, 3, 1, 2 → [1], 3, 4, 2 → [1], [2], 4, 3 → [1], [2], [3], 4
Le code implémenté est illustré ci-dessous. La liste qui est initialement affectée aux données variables est la colonne numérique à traiter. De plus, je l'ai implémenté sans utiliser min dans la liste.
selection_sort.py
data = [4, 3, 1, 2]
print("input :" + str(data))
data_len = len(data)
for k in range(0, data_len - 1):
min_index = k
min_data = data[k]
for i in range(k + 1, data_len):
if data[i] < min_data:
min_index = i
min_data = data[i]
else:
pass
data[min_index] = data[k]
data[k] = min_data
print("output :" + str(data))
python
$ python selection_sort.py
input :[4, 3, 1, 2]
output :[1, 2, 3, 4]
Je l'ai posté pour la première fois comme pratique pour poster le code que j'ai écrit. Si vous avez des questions, veuillez les signaler et poser des questions. Surtout s'il y a des améliorations dans la façon d'écrire le code, je pense que cela sera utile pour étudier.
Recommended Posts