Parcours en largeur d'un arbre binaire
Un arbre binaire est soit vide, représenté en Python par la valeur None
, soit un nœud
représenté par un triplet (g, x, d)
où x
est l’étiquette du nœud et g
et d
sont les sous-arbres gauche et droit.
On souhaite écrire une fonction parcours_largeur
qui prend en paramètre un arbre
binaire et qui renvoie la liste des étiquettes des nœuds de l’arbre parcourus en largeur.
Exemple
🐍 Console Python
>>> arbre = ( ( (None, 1, None), 2, (None, 3, None) ), 4, ( (None, 5, None), 6, (None, 7, None) ) )
>>> parcours_largeur(arbre)
[4, 2, 6, 1, 3, 5, 7]
Compléter le code ci-dessous
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
.128013f06S:d=4yr./Nopg2mcb1!w937ve[ l8P5)ti]knua(_sh050g0C0K0Q0L0F0T0E0t0F0Q0T0T0h010K0L0p010406050T0P0s0s0Q0k0j040e0o0F0P0/0o0O050m0_0{0}0 0@0p04051f181i0m1f0@0g0L0B0%0)0+0-0U0L0q0U0F1w0U0K0=050Y0u0F0C1r0*0,011v1x1z1x0K1F1H1D0K0k1g0K0U0%120T0p0Q0O0-0r011J1t010b0!0C0O0Q0s0C1D1$1(1-1L1:1H1?1^0=0a0E0H0k0o0p0o0T0L150O0E0W1!0k0k0C0t2d181{0O1g0m1Y2q1V1X1W1E0g1}0-1z0O1=2a1D1o1q0(1K2A0L2C0O0o2G1D0p2j1g2o2q2U0^1%2e2I1.2N0k0|0F0=0E0v2n2Y0?2X1|2!1L2$2(2*0r2-1(2/2o2z012@0Q2)040E0z2{2p0@2~2=0-31330E0i372}2Y2 3d2*0I3h393j3b300o2%322*0d3o2:2Z1s2?3t2^340A3y3a3B3c3D3v340G3H3q3J3s3u3e0y3P2;3R3l040v0c3W3A2J3S3E0v2,192.1j2S182G2t0g1X2y3r0t2O1_1g3?1h3;2W3.2|053|0W2T3Q3)0N0=0W0b3h3z2 0x2*4g3I3)0O0b0=1%0k3|0P0k0T0S0)0k0q0C4u4l4a1.0;040R4D3X4n0=0}0u2j4J3(4F0=0J0f3o0E4X0E4h3r0O4q0}4t4v3h4Z4m1.0o0=0h4+4!3R4G0D0M4W4Y4?4L041 0C4=4-1L4/044;442p4,4E1L4^4Q3k4M0k4O5158494K4S044`5k064Y5a5m1L4c040x1v1H525b3c0=505B5u0-550w572U5t4R5c0=4_4V5q5s5s4}2#4M5G5O5I4:5Z5f4 1;5e3r550l5+3Y4q285/3)4G4I5k5W1L0s0L0=3$5`530-4G0J4{5U5N5(4r4)0T5?4.0=5.615C304M0p0p1=0g6d5P4H6p5D040Q6s015d6h5H015}0=3-2W626x0=0M655T67683r5w0L4f5k6N5:6u6w6y6F6i6C04606Y6A4G5p5M5{5#045K5%6O0t0=0n165j6%5!6H045S2U5r6M5V6G4$5)5A6z6{5-6w740Q6l6n6W0=5_6`5(6v772 6X3/6G6!6$7o6i6)6K6 716,016P6R6+735Y7l3r7n457p5~042`7F4@6I6:3R5J5L2.6T4b6=046@2C7f6}66717V5X756_7s6A797N4~7c6m0O6o7:5n7h7-6{7b7#0D6w6!7M7i7G6I7v2.704X7y5w2j0K4u176S7y746a0o4u6c5q18470C2q2R8r3=1p3@2t2w2r0Q1G8u0m3?0@8E0X0Z0#04.
# Tests
(insensible à la casse)(Ctrl+I)
(Alt+: ; Ctrl pour inverser les colonnes)
(Esc)