Tri par sélection

Écrire une fonction tri_selection qui prend en paramètre un tableau tableau de nombres entiers et qui trie ce tableau en place (c'est-à-dire que le tableau est modifié) par ordre croissant des valeurs.

On utilisera l'algorithme suivant :

  • On parcourt le tableau de gauche à droite :
    • on recherche le minimum du tableau entre cette position courante et la fin du tableau
    • on échange alors les 2 valeurs
Exemples
>>> tab = [1, 52, 6, -9, 12]
>>> tri_selection(tab)
>>> tab
[-9, 1, 6, 12, 52]
>>> tab_vide = []
>>> tri_selection(tab_vide)
>>> tab_vide
[]
>>> singleton = [9]
>>> tri_selection(singleton)
>>> singleton
[9]
###(Dés-)Active le code après la ligne # Tests (insensible à la casse)
(Ctrl+I)
Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier
Évaluations restantes : 5/5
.128013lS]et-d5f18umag,_/R=in 6)yàqPhcD[(bs.p;r4j'90"ov+w73êOk:é 2030b08090i0p050E0!0z050i0E0E0o0O090p0G0O020r030E0g0h0h0i0I0u02060P050g0^0P0q0!000i0h0G0H0!0n08120I0w0g080E030m0 1113150}0G02031A1t1D0m1A0}0b0p0Q0-0/0;0?0y0p0j0y051R0y090{030(0D05081M0:0=0O1Q1S1U1S091!1$1Y090I1B090y0-180E0G0i0q0?0#0O1'1O0O0d0*080q1g081Y1}1 241)271$2a0h2c02040!0x0I0P0G0P0E0p1b1d0%1{0I0I080z2x1t2e0q1B0m1_2J1?1^1@1Z0b2g0?1U0q292u1Y1J1L0.1(2T0p2V0q0P2Z1Y0G2C1B2H2J2:0~1~1d2#252)0I12050{0!0e2G2@0|2?2f2_1)2{2}2 0#321 342H2S0O390i2~020!0U3d2I0}3g370?3j3l0!0J3p3f2@3h3v2 0c3z3r3B3t3i0P2|3k2 0s3G352^1N383L3a3m0T3Q3s3T3u3V3N3m0f3Z3I3#3K3M3w0M3*363,3D020e0N3;3S2$3-3W0e311u333H3=3}3@0e3c423e443|2`3%3l0e3o4a3q3R3C4f0{0e3y4j3A454e3.4o3F4r4c4m4v3^3P4y4l3J473Y4r1E2.1t2Z2M0b1^2R3J0z2*2m0$1K1B2-082/333z034T0%4#4t1)0X0{0%0d3z0!4F3?0d0{2t2v2x0l0h2'0p0h104%3!3}0`020C533+460{1:080i0g594+0?560k4;4?5b020p5h4d1)560t0Y3G0!5y4=54250E2202001p0P090H2C0z0y080I5M1%0'0!2C0q0Q0P0p1%0500010U0M0H2'1J0z1%0b0g0!4~0q50100!0v0!1~0I0^0I0!2z5!5$5'5)0p5+0!0p5G0g5I0H5x5z5n2`0{5)4}4 5m5B1)0P0{0o6k5a6f5p6c5y6e4,0{0d3L6q5i3i0{0K6B5s0?0P0S6g0q6G3C0D0{0I1 0j085r3h56584J6l3u6g6N3J6n020R6%3,4~4o6V3J5k6+466P022j6/3,6X6`5o5d5f6}255u5v6u5z6v6!0O4-5p4:4r5A6r385c0i1#5e5g6Z7f5j0{0B717g026F7m6C56076=256(00055J7z7s6 7l2=78567q7v6H6D5p0q0b6i5;7r7o02075w4y767#6d780q6L7S5:5q7d6w6I6o7F6#7t757.796Q0'0g0I6M7-7'7)7T7,2:0r857^7a4/7;3i4^022D0y6S6U7N6W0{6Y7J7n7P7H7V0O6;7 8n7(6t8i6:0{5l8t6C8v7u8m7w0{747!7%8u7h7j708x6{7p8q8v834$7K0{078A2:7e8C8M1$8O8F7O7L8S6E8q7x8a6(6p8B7O8v8p8P558R8`6s8E8V8n7x8Z338#8@8%7k8.8|8)3C6$8}5t8X3G867888087c8!7^0q8c1?0p0l0E081$2E0p1c99578,028_9b8y028I8476876y6A8?9c8w9n786J6L8a0q6@6R0q6T9A8l908C6@6_9e7W9$3e9o978(9%8*8H9I437$778L7Q5*0882510h8:7:9O4G4_2u2w9y0q9 529*8r8k9C9E9;8j02933e959P8U9-8W9H759K808d5M8g9#ag7i8'7Iai9Gal2Iana59|649~7+a09AaG3m9.9QaE8Qas4E0m4(4!4Ka!0m4N1t094Pa(2P2KaBa$4N1z4*7O2C0h0l0d0i0X9~0y0U0{1l1n1p1r0!7Z2=1G341A0W1d0G081a0!0Z0z0I0p2C0!1$1{2z290!0g1d9u0g050!0Ebi0_090F0r0A1%0G190E0k66bw0 0d2709bJ053L0,5-5_134T7|bT5Z0ibm0p0E091%5^9r5ObJ2z0E0L130I0Vb(5}5^05b:0Q1 095~5O5;5Obg050Z2l0qb~2z5+1/5Zb%b(0F1E342Z3h1+1T1V1X4Y4Lb72=aZa=3h9k9m949o9qbj9t9v2D2Fad6|ad8^a.9:aq918Hb69^8K6C7a6z0I9V9d9R8n9T7Q9V9XaycFafcH9(29azcH9/aDcL8GaWcX6C6(0a8a6-3^9A9@4b9_aI3?6g82a2028=c?96aTc 9_9L02cTcV7?a43,cZ2'c#6Qc%9FaV9,2IaSapaH7^6(6*di3}c{41dp8{akdm6^c+c'9Bc-9DcJc/dsar0tc~3qd0au8n7a0pcwamaSahc:9=027MdD8~9A7ydz7A0{7C7Ed.7GdN9Ad)aU5o9s7+d,cOdbdU7#dtd4d?7/d6dg8 e1e3avd$dPcMd(9Cduct9G8YdgeeekaVd`d%aoe5d*9f7Xd5d7cxedd^dJeref8$5peud{728XaQd16~eCev7WeEepd|d,3QaY4U2J4Z2Ja:4M0'0)0+02.