Aller au contenu

Retourne k éléments en haut d'une pile

La cadre

On suppose qu'on dispose d'une classe Pile, avec les méthodes suivantes :

  • __init__ : l'initialiseur permet d'obtenir une instance de Pile vide.
  • est_vide : revoie un booléen ; True si l'instance est vide.
  • empile : modifie l'instance en ajoutant un élément au sommet.
  • dépile : modifie l'instance en supprimant un élément au sommet et le renvoie.

👍 Voir >>> help(Pile) pour plus de détails.

Exercice : Retourne le haut

À une classe Pile, ajouter une méthode .retourne_haut(self, k: int) -> None qui modifie l'instance de la pile en inversant l'ordre des k derniers éléments empilés.

👍 On garantit qu'ils existent. Il sera inutile de le vérifier pour cet exercice.

⚠ On ne connait pas le détail de la mise en œuvre de la classe Pile.

###(Dés-)Active le code après la ligne # Tests (insensible à la casse)
(Ctrl+I)
Entrer ou sortir du mode "deux colonnes"
(Alt+: ; Ctrl pour inverser les colonnes)
Entrer ou sortir du mode "plein écran"
(Esc)
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 : /
.128013x,59/f.q!7B8r;nb N_oO=ylaepcwgu)vdM461`3kAméhtsP(S0+2-i:050I0A0U0z0%0y0V0r0C0y0z0V0V0w010U0%0B010406050V0F0R0R0z0n0x040Y0u0y0F0|0u0p050f13151719110B04051p1i1s0f1p110I0%0H0;0?0^0`0T0%0E0T0y1G0T0U0 050,0q0y0A1B0@0_011F1H1J1H0U1P1R1N0U0n1q0U0T1T1D010g0.0A0p0z0R0A010;1c0V0B0z0p0`0#1N1~201.1V1;1R1@1_0 0a0r0W0n0u0B0u0V0%1f0p0r0*1|0n0n0A0C2n1i250p1q0f1,2A1)1+1*1O0I270`1J0p1?2k1N1y1A0=1U2K0%2M0p0u2Q1N0B2t1q2y2A2(121 2o2S1/2X0n160y0 0r0M2x2,102+262.1V2:2=2@0#2`202|2y2J01310z2?040r0O352z11382 0`3b3d0r0K3h372,393n2@0d3r3j3t3l3a0u2;3c2@0L3y2}2-1C303D323e0k3I3k3L3m3N3F3e0m3R3A3T3C3E3o0e3Z2~3#3v040M0Z3*3K2T3$3O0M2_1j2{3z3+3?3-0M343{363}3=2/3V3d0M3g433i3J3u480 0M3q4c2A2#0A2A2Q2D0I1+2I3B0C2Y1`1q4p1r2$3J2)2{054v0*2%3!3?0P0 0*0g3r4e3B0D2@4P3S3 0g0 2t0U0u0F0n2M0t0T0z1e4U4J1/0~040X4-3~1/0q4:0V0A0y4O4k4Q3#4:0c3r0r503 0 0P4?461V4:0(54562/0q0 2V0U5a394:0G5f4V1/0u0 0$020E0U0o5q4.1V0P0C0 0s1g0A5m3B5d3;394S3e0r5Q5J3#0V0I0 015X0J2Y0%1;1S0?0r0B1=0r1?0r2V0H0A0n0V200U0r0y003D0I2t2p0A0V5M3B5U2@5Q0r0N0%0N5 4%0%5;0:0S0y0S1_0p0U0:0A0R5*6h0V0h0r0(0!0M0(0r0v2o0E175@2m0r0i0F000.6m0b0%0V0U1?5^0j625T5V5P5Q5X013y66555r300 6p0A0t0Q5A4@1V5t040w6-5b3m0 0W1=5S3?4:0X5p4k066!5g5C0 0g3D6?3u0 0t793B0u5O2V7d3,5i040n200E5I4 6$0`6~6|2/587u5c0 0G5e716!737r3a6(1=6+7x0`6:0h7K7G046n6)7O7t7q5B0`4_0 4{4}7O7M7O0p4M0S7S7V6.7s0 6 702(067266746^046)0t0l7i3?6:6=4k6#7W7P6`1R7T7:7=3|7E864L04770n807v047c847`017f5j1h8o7F0p7k7m0p7o8a4;7(7w7-6@015o7B7?7D7_8v7H1R7~7$0 7N8F7a7Q6o6{8U5K7:8D7|7I6,8Z3#7%8*57040I7+8Y2*7F6~0G8c447^5R7F8g8i8k6%8m917L7g8t2(857.3a8x7n7p8?867U9f9a7)04598-4/7z8J8d8L998G7Y047!4~9i8G8,9z8V7R8=4E8@8#9n927}7 9J7L8S8$8:7,9C8!4;8_3I0f4G4n1t4B0f4z2B4r1i2E9+0z1Q9!9%1z2|9%0+0-0/04.