Insertion dans un ABR (1)
Un arbre binaire est implémenté par la classe Arbre donnée ci-dessous.
Les attributs fg et fd prennent pour valeurs des instances de la classe Arbre ou None.
| Python | 
|---|
|  | class Arbre:
    def __init__(self, etiquette):
        self.v = etiquette
        self.fg = None
        self.fd = None
def parcours(arbre, liste):
    if arbre != None:
        parcours(arbre.fg, liste)
        liste.append(arbre.v)
        parcours(arbre.fd, liste)
    return liste
 | 
La fonction récursive parcours renvoie la liste des étiquettes des nœuds de l’arbre implémenté par l’instance arbre dans l’ordre du parcours en profondeur infixe à partir d’une liste vide passée en argument.
Compléter le code de la fonction insere qui insère un nœud d’étiquette cle en feuille de l’arbre implémenté par l’instance arbre selon la spécification indiquée et de façon que l’arbre ainsi complété soit encore un arbre binaire de recherche.
Tester ensuite ce code en utilisant la fonction parcours et en insérant successivement des nœuds d’étiquette 1, 4, 6 et 8 dans l’arbre binaire de recherche représenté ci-dessous :
flowchart TD
    A(5) --- B(2)
    A --- C(7)
    B --- D( )
    B --- E(3)
    linkStyle 2 stroke-width:0px;
    style D opacity:0;
Compléter le code ci-dessous
.128013b;=wlSdf-:431Agnah(.p/uerovm)q6 7!2i,y9éc8s_PNtk05050h0y0V0r0K0f0R0G0P0f0r0R0R0d010V0K0v010406050R0x0C0C0r0z0M040g0A0f0x0?0A0q050w0}0 11130{0v04051j1c1m0w1j0{0h0K0B0+0-0/0;0-0q0p0x0r0p0y0j0v0M0V0s1a0G0s0K0p0s0f1O0s0V0_050$0b0f0y1v0.0:011N1P1R1P0V1X1Z1V0V0z1k1J0+160R0v0r0q0;0J011#1x010i0(0y0q0r0C0y1V1`1|211%241Z27290_0a0G0T0z0A0v0A0R0K190q0G0!1^0z0z0y0P2u1c2c0q1k0w1J2H1;1?1=1W0h2e1y0K0q262r1V1s1u0,1$2R2T0q0A2X1V0v2A1k2F2H2.0|1{2v2Z222%0z100f1V0r1M2A0i0;030S0S0P2(0y1R2$0A0j0n3c0_0G0n1c0r2/2=0`2;2d2@1%2_2{2}2 0y3101333537392U3c0j1 040G0J3i3k1|3m2F2Q013r0r2|1k2~0s303234360!3B2%3D0m3f0m3J2E3l0{3N3p0;3Q3S053U3W3x3Y3A2S3C3d0l3f0l3+1d3-3n2?1w3q0A2`3R3t3V3v3X3z3!3}3$3d0Y3f0Y432.3.2=3O3=4d3_3y3Z384j3b3d0F3f0F4p453/483;4a3s3T3u3w4x3|3a3D0H3f0H4G3L4r3o4J3P4L4c4N4e4P3{4i4S3d0Q3f0Q4X2G4Z472!4$4b3?3^4f3`4h4z4.0j0N3f0N4?3M4s3:4{4M3@4O4g4y3#4B3c0X0_0n0X584^4t4%4}5f505h4A3D0n0n5m3h0w3j3,4Y465r4|4v4 4Q4-3~3c3F0n3I5D3K4@5H5b4u4)4w4,525O0n3(045(5p5W4#5Y5e4*5g4R5%405*425T5F5V4I4`5/4~4+515i5y4m5*4o5{445G5~2^5s5K625w530n4D5*4F694q5-5 6e5Z5L5#643d0n4U5*4W6n4H5a5.6r5:5!635x6w4:5*4=6B6b6D6q5J6s6g5?4k3c555*576O5}6Q6d6S6G6t6I530J5l046.5,6c496)615=5N6W0J5A6:5C5E6a6$4!6R5d6_5v6V5j0J3F7b6=6%6@765u5M5$6|5)0J3*6#59746(7h5;786{7a5^0J5`716o6?4K6^7i6u6J3E660J687B6C7r7g4(6*6U7w3D0J6k7W7e7P7E7t6H6h5O0J6y7*581n2,1c2X2K0h1?2P5b4y2W1t1k2+0y2-3l5|1k4y802d0K0h0;342F5y3t87896,5%202i0y8f7(6W6~3+7D010W0_3p826p220e3f8v8q0q0P0_0o0z0b2A8A7f0;0^040k820{72852v8e018a2=7V8d888V8g6|8i288k8#8m7a1V5T0G8:0G8w1%8s040!0i8J7!018y3G8|4_220i0C0_342S2t34913O8M0t9b5b0b8M0R388{8R8?8L0_0L828=8B0_0#0K0E0x0#0V0y9f4#8M0D8O8R8Q2:3N8U8W1|3%8Z8l799O0G8j9Q7U3d5)3J8;9!9s8K019h0_9j0f9l9J9%0A0_0u9C5 0_0B9r9n019:040d9`9t049v9x9z9B9H9b9L0S8b3 9P8+9Rac9T8)9V7k5j5^9Z9#8:9{9)049+9-818q9}9=9ma10i0pa09/0_9 8R9$8}0W8D040U1aa66oaz4sa9ab0j665ea98,3D4mah29aj6vaV8.3jaoap8qarat9?22axa=3q0_0i0haD8}9}aG2.aI928@aLaN2T8Pa88!9M0q3D6kaXba8$5j4Da$8*7H53be5T9IavaSbgaU6ybfa(7I4Ubkbx53bv5{8q8^8`a^0;8 8=aR8}0q0i0_1{0z360x0z0RbI019dbX0q0_118HaPbr8}8M9qaH9{b#041R0R9AbX9E9GaQ9.86bt8X4/adbm5O4:bAae9W0j6Lana.9%8^0Kau3Lb24tb$8G8Ib.aw0_0Ib03lch5baK0_b6b)3L9{8Mb`45bM8Tb~9N3d6Ybwc6ak3D55c5c26WcI8/a-b/bQ11bTbVb^0_9ecDci04b%clb|b30;a@c$5Xa`aCc/9D9pa}c,3P0_b=b@c?4`9Eb8c$aTb 5kc1bh5y5lcOd86w6/ca9#cUb;0Kb?cx2G9{c.c+c%0r0v0v26a|c 22bZdwa_c(ckdl8S3Odob*c`b:9_dz9o040Dd2dpd4cG3c8o2~aYafdT8(a%cKa)5za+3GcTa1bRcXbWdLbYc!b!cjb(bXdGcyaAdvdp5bb,c_c%c}dDcz0_dOa7d3cFbc6w3FcJcP5j5RdZbldc5Pd(9!9{8^2A0VbU1bcm9%b:e2dPdH0GdRea3c9YdVbgaZ6w3(dbeGeCd(bqd`bs8faU0nameEbB5@eheV8nambEcc0_bHd/bKb!bP042S9jc*eyd~d;d/b:c)e38qd etbN8t1ZcZdNcB5Ge8eQd50naWeUd#7If8eXfb6iaWe#8}bK8;bX0R0h0_029x0A0V0cfq0xfsfufrft0Ge_0G0yb?0G0x2Tez0qb?1|0P1!2x0-2e1!8Fb(0G9x0Kez0C0v0f0O290qc~b{eyeA5ybefaeef-fef:6wbo5E8qfn3fa-fHfBdC0G0b2S0%2A2w1!2A0P0s0ybSgaayf*eOb}f6dS6xd7eKgkeJdXgk2Hf_9%f{d)8:fvfxgxftgz0cexggcEgieB0nc9f/ejgIf=gLc9cScbaJ0_cee0c:040,dDcs4#9}020fftgV5.d?e:gEdF9;d=04dKd}c@8NgDdm9Ke95ycIgKgmcN9Uff5%cRa,d*e$e-cf2Gg!9@dBd@d/d_g{euc;g*4`0A8 djhma?8 2%0Vhrb4cvaOf1f35Vf58#aU6.gldXhGgoc7hGgrgva-gRdIgTfKgbe`9%dyg@hee_d^g:e@hld/e|b1dhgYf1e6gfhjghhEd56}hHhL5AhKcL3dh^hNhPen9u0)hVb+0_hB3mhDbb7Vech0hI1 h|a)7belhPfla1h!hhh$hY2^h(h+cn9~hw3;8EdCf1c#irdAh-h)e5g`dEf,h~eDezeFhIeIh3f?3E9YgQhd228^389jhAiI5HiK3EeTiNeY7xgNeK7zikaoi2haixc{hfg-h;c`hidEgWa{i^hogTd.iu9/htfsi^cuaMhziGg_e7dQg}h~f9i+h46|a#iRej7Li;ildhe.hUiBg;ioiDc-iqe;g+04j1jeb-j6e~gXf0jeh/cCjhgG7Vf.jliS7Wi.hIf^hOembFi3i!jei8eNi|jUaah@bviehLbzjpi/bDh7iliWdAjzjDhnjCg.j0d|crdnaFi^b:fTi{i g^iCj isjLi5c`d1jg810w847.7 7:7|1c0V7?kt2N2I0r1Ykq0w7;8Q0!0$0(0R04.
 
  
  
                
              
             
# Tests(insensible Ă la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)