Вы находитесь на странице: 1из 2

L2 - Algorithmique et structures de données (Année 2011/2012) Delacourt, Phan Luong, Poupet

TP no 4 - Fonctions élémentaires sur les listes

Exercice 1. Récursion !

Dans cet exercice les listes seront représentées par des listes chaînées comme il a été vu en cours :
c l a s s Noeud :
pass
def noeud ( x ) :
n = Noeud ( )
n . valeur = x
n . s u i v a n t = None
return n
class Liste :
pass
def l i s t e ( n = None ) :
l = Liste ()
l . premier = n
return l

1. Réécrivez les fonctions suivantes :


– vide(l) qui renvoie True si la liste l est vide et False sinon ;
– cons(x, l) qui renvoie la liste commençant par l’élément x suivi de la queue l ;
– tete(l) qui renvoie le premier élément de la liste l ;
– queue(l) qui renvoie la queue de la liste l.
(ces fonctions sont toutes très simples à écrire, il ne faut pas plus de 3 lignes pour chacune)
2. Construisez la représentation de la liste [1, 2, 3, 4, 5, 6] en utilisant les fonctions de la question 1
(indication : il faut utiliser liste et cons).
3. Écrivez de manière récursive les fonctions suivantes en ne manipulant les listes qu’à l’aide des
fonctions de la question 1 (donc indépendamment de l’implémentation utilisée) :
– longueur(l) qui donne la longueur de la liste ;
– element(i, l) qui renvoie le i-ème élément de la liste ;
– supprimer(i, l) qui renvoie la liste l à laquelle on a enlevé le i-ème élément ;
– ajouter(x, i, l) qui renvoie la liste l à laquelle on a ajouté l’élément x en position i.
4. Écrivez les fonctions un peu plus avancées suivantes (toujours de manière récursive, en n’utilisant
que les primitives de la question 1) :
– map(f, l) qui applique à chaque élément de l la fonction f ;
– count(x, l) qui compte le nombre d’occurrences de x dans la liste l ;
– filter(f, l) qui renvoie la liste des éléments de l pour lesquels la fonction f renvoie True
(on suppose que la fonction f ne renvoie que True ou False)
– reduce(f, l, x) : on suppose que la fonction f prend 2 arguments. Elle commence par cal-
culer x1 = f(x, y0) où y0 est le premier élément de la liste l, puis elle calcule x2 = f(x1,
y1) où y1 est le second élément de la liste, et ainsi de suite jusqu’à épuiser tous les éléments de
la liste. On renvoie alors la dernière valeur obtenue.

Exercice 2. Itération ! ( ?)

L’autre encodage des listes vu en cours (version itérative) utilise des tableaux :
– Une liste est représentée par un tableau de taille MAX et un entier qui représente la taille de la liste ;
– La liste vide est donc un tableau de taille MAX (comme toutes les autres) dont les valeurs n’ont pas
d’importance et dont la taille est 0 ;

1
– La liste [10, 20, 30, 40] est représentée par un tableau de taille MAX (au risque de se répéter...)
dont les 4 premières valeurs sont respectivement 10, 20, 30 et 40 et l’entier 4 qui indique la taille de la
liste.
Remarque : les listes sont donc ici encore représentées par un couple mais cette fois-ci le un couple de
la forme (tab, n) contenant un tableau et un entier.
Autre remarque : On prendra dans le TP la valeur MAX = 100.
1. Écrivez les fonctions suivantes pour qu’elles manipulent des listes représentées par des tableaux :
– liste() ;
– longueur(l) ;
– element(i, l) ;
– ajouter(x, i, l) ;
– supprimer(i, l).
2. En n’utilisant que les fonctions de la question 1 (mais de l’exercice 2 cette fois-ci !) pour manipuler
les listes, écrivez de manière itérative (avec des boucles quand nécessaire) les fonctions vide(l),
tete(l), queue(l) et cons(x, l).
3. Écrivez de manière itérative les fonctions de la question 4 de l’exercice 1.

Вам также может понравиться

  • Équations différentielles: Les Grands Articles d'Universalis
    Équations différentielles: Les Grands Articles d'Universalis
    От Everand
    Équations différentielles: Les Grands Articles d'Universalis
    Оценок пока нет
  • Language C TD6
    Language C TD6
    Документ2 страницы
    Language C TD6
    Sadda sani Bachir
    Оценок пока нет
  • ds1 1
    ds1 1
    Документ4 страницы
    ds1 1
    Akça Kuzgun
    Оценок пока нет
  • 05 - Liste chaînée (1)
    05 - Liste chaînée (1)
    Документ1 страница
    05 - Liste chaînée (1)
    yenar64070
    Оценок пока нет
  • TD_Listes
    TD_Listes
    Документ2 страницы
    TD_Listes
    pubg mobile
    Оценок пока нет
  • Decembre.10 Cor
    Decembre.10 Cor
    Документ8 страниц
    Decembre.10 Cor
    Best Offensive
    Оценок пока нет
  • TP6: Les Listes Cha In Ees
    TP6: Les Listes Cha In Ees
    Документ2 страницы
    TP6: Les Listes Cha In Ees
    Slim Yaiche
    Оценок пока нет
  • Python Resume Revisions PDF
    Python Resume Revisions PDF
    Документ5 страниц
    Python Resume Revisions PDF
    Soufiane
    Оценок пока нет
  • Cours Python Listes
    Cours Python Listes
    Документ2 страницы
    Cours Python Listes
    DOUAE EL MRABET
    Оценок пока нет
  • Ipt Mpsi TP4
    Ipt Mpsi TP4
    Документ8 страниц
    Ipt Mpsi TP4
    Swayzii
    Оценок пока нет
  • TD Info
    TD Info
    Документ2 страницы
    TD Info
    zakariaakssisse52
    Оценок пока нет
  • Séquences: Les Listes & Les Chaines de Caractères
    Séquences: Les Listes & Les Chaines de Caractères
    Документ10 страниц
    Séquences: Les Listes & Les Chaines de Caractères
    Bessem Bessem
    Оценок пока нет
  • Prolog Cours3
    Prolog Cours3
    Документ57 страниц
    Prolog Cours3
    Ali Yussuf
    Оценок пока нет
  • TD 03 Prolog
    TD 03 Prolog
    Документ2 страницы
    TD 03 Prolog
    Mohamed Naoum
    Оценок пока нет
  • Chapitre2 - Listes 2020 Copie
    Chapitre2 - Listes 2020 Copie
    Документ13 страниц
    Chapitre2 - Listes 2020 Copie
    chema.belhedi
    Оценок пока нет
  • Diapo Pile Liste
    Diapo Pile Liste
    Документ63 страницы
    Diapo Pile Liste
    ffshadow72
    Оценок пока нет
  • Cours 1
    Cours 1
    Документ26 страниц
    Cours 1
    souad mhiri
    Оценок пока нет
  • Chap 4
    Chap 4
    Документ9 страниц
    Chap 4
    GT
    Оценок пока нет
  • TD- listes et dictionnaires
    TD- listes et dictionnaires
    Документ6 страниц
    TD- listes et dictionnaires
    ismaelmba01
    Оценок пока нет
  • Exercice 2
    Exercice 2
    Документ2 страницы
    Exercice 2
    ezio bilal7
    Оценок пока нет
  • Exercice 1 (Points)
    Exercice 1 (Points)
    Документ2 страницы
    Exercice 1 (Points)
    belhadi.k
    Оценок пока нет
  • Série Dexercices 02
    Série Dexercices 02
    Документ1 страница
    Série Dexercices 02
    vbzrg
    Оценок пока нет
  • TD Algo2 2021 Listes
    TD Algo2 2021 Listes
    Документ4 страницы
    TD Algo2 2021 Listes
    youcef hedibel
    Оценок пока нет
  • td2 1
    td2 1
    Документ3 страницы
    td2 1
    Shacowo 1
    Оценок пока нет
  • TD11 Les Listes Chainees
    TD11 Les Listes Chainees
    Документ3 страницы
    TD11 Les Listes Chainees
    Moez Ali
    100% (1)
  • Serie 4
    Serie 4
    Документ1 страница
    Serie 4
    rramyl edba
    Оценок пока нет
  • Juin.10 Cor
    Juin.10 Cor
    Документ8 страниц
    Juin.10 Cor
    Best Offensive
    Оценок пока нет
  • TD2 - Listes
    TD2 - Listes
    Документ2 страницы
    TD2 - Listes
    tarek gritli
    Оценок пока нет
  • L2 Algo Slide2 2022
    L2 Algo Slide2 2022
    Документ31 страница
    L2 Algo Slide2 2022
    Mahefa
    Оценок пока нет
  • Seq3 Algo
    Seq3 Algo
    Документ7 страниц
    Seq3 Algo
    ndiaye ndira
    Оценок пока нет
  • Python - Les Séquences
    Python - Les Séquences
    Документ11 страниц
    Python - Les Séquences
    azkeelrjdkdkkd
    Оценок пока нет
  • Janvier.12 Cor
    Janvier.12 Cor
    Документ8 страниц
    Janvier.12 Cor
    Best Offensive
    Оценок пока нет
  • Lisp 01
    Lisp 01
    Документ66 страниц
    Lisp 01
    Mohamed Mo
    Оценок пока нет
  • Decembre 10
    Decembre 10
    Документ8 страниц
    Decembre 10
    Best Offensive
    Оценок пока нет
  • TD 01
    TD 01
    Документ2 страницы
    TD 01
    Amen
    Оценок пока нет
  • TD 2-Listes Chaînées 2023
    TD 2-Listes Chaînées 2023
    Документ5 страниц
    TD 2-Listes Chaînées 2023
    Mayssa jbali
    Оценок пока нет
  • ASDC - 20-21-Part4
    ASDC - 20-21-Part4
    Документ18 страниц
    ASDC - 20-21-Part4
    Iheb Ben Gara-Ali
    Оценок пока нет
  • TP03-eleve
    TP03-eleve
    Документ3 страницы
    TP03-eleve
    sowa81154
    Оценок пока нет
  • Chapitre 3 Les Listes
    Chapitre 3 Les Listes
    Документ9 страниц
    Chapitre 3 Les Listes
    calabi mozart
    Оценок пока нет
  • AlgoII TD3
    AlgoII TD3
    Документ2 страницы
    AlgoII TD3
    aissam
    Оценок пока нет
  • PDF 5 Exercices Python
    PDF 5 Exercices Python
    Документ4 страницы
    PDF 5 Exercices Python
    OmniworksTechnology Mohammedia
    Оценок пока нет
  • TP 08 - Tris (Suite)
    TP 08 - Tris (Suite)
    Документ3 страницы
    TP 08 - Tris (Suite)
    moreiramario005
    Оценок пока нет
  • Algorithmes de Tri Cours1
    Algorithmes de Tri Cours1
    Документ11 страниц
    Algorithmes de Tri Cours1
    Med Rhaiouz
    Оценок пока нет
  • Entrainement DS1 PDF
    Entrainement DS1 PDF
    Документ1 страница
    Entrainement DS1 PDF
    Tit
    Оценок пока нет
  • Python Tris PDF
    Python Tris PDF
    Документ4 страницы
    Python Tris PDF
    Cheujeu chaldou
    Оценок пока нет
  • 08-Tableaux Numpy
    08-Tableaux Numpy
    Документ9 страниц
    08-Tableaux Numpy
    Royoume Layelii
    Оценок пока нет
  • Tri en Python
    Tri en Python
    Документ5 страниц
    Tri en Python
    Anowar Saleine
    Оценок пока нет
  • Td1 LC
    Td1 LC
    Документ2 страницы
    Td1 LC
    dhaouadi hazem
    Оценок пока нет
  • Decembre.09 Cor
    Decembre.09 Cor
    Документ8 страниц
    Decembre.09 Cor
    Best Offensive
    Оценок пока нет
  • SupportCoursASD TD1
    SupportCoursASD TD1
    Документ5 страниц
    SupportCoursASD TD1
    montassar azzouz
    Оценок пока нет
  • TP N3 PDF
    TP N3 PDF
    Документ2 страницы
    TP N3 PDF
    RABAH ABBAS
    Оценок пока нет
  • Scheme Doctor Racket
    Scheme Doctor Racket
    Документ21 страница
    Scheme Doctor Racket
    renaud
    Оценок пока нет
  • TD - TP - 4 - Types Structurés
    TD - TP - 4 - Types Structurés
    Документ5 страниц
    TD - TP - 4 - Types Structurés
    Boutayna J03
    Оценок пока нет
  • Serie 3x
    Serie 3x
    Документ4 страницы
    Serie 3x
    dieslen
    Оценок пока нет
  • DL 1
    DL 1
    Документ2 страницы
    DL 1
    Chérif Kagni
    Оценок пока нет
  • Examen 2022
    Examen 2022
    Документ9 страниц
    Examen 2022
    bouchrihamoundirdz
    Оценок пока нет
  • Examen-2022-Architecture Des Ordinateur
    Examen-2022-Architecture Des Ordinateur
    Документ7 страниц
    Examen-2022-Architecture Des Ordinateur
    Korbas Zineb
    Оценок пока нет
  • Python TD 5
    Python TD 5
    Документ2 страницы
    Python TD 5
    Clo Gueus
    Оценок пока нет
  • Exam Curseur Piles
    Exam Curseur Piles
    Документ2 страницы
    Exam Curseur Piles
    Adnan Souri
    Оценок пока нет
  • Corrigé TD2 - Listes chaînées
    Corrigé TD2 - Listes chaînées
    Документ16 страниц
    Corrigé TD2 - Listes chaînées
    Sel Ma
    Оценок пока нет
  • Projet e Tudi Ant
    Projet e Tudi Ant
    Документ3 страницы
    Projet e Tudi Ant
    Salim STlemcen
    Оценок пока нет
  • Mini Projet PDF
    Mini Projet PDF
    Документ4 страницы
    Mini Projet PDF
    Anonymous UzBCbRad
    100% (2)
  • Projet e Tudi Ant
    Projet e Tudi Ant
    Документ3 страницы
    Projet e Tudi Ant
    Salim STlemcen
    Оценок пока нет
  • TD 8 Corrige
    TD 8 Corrige
    Документ7 страниц
    TD 8 Corrige
    Salim STlemcen
    Оценок пока нет
  • ED2 Corrige
    ED2 Corrige
    Документ5 страниц
    ED2 Corrige
    Maria
    Оценок пока нет
  • Cortp 5
    Cortp 5
    Документ4 страницы
    Cortp 5
    Salim STlemcen
    Оценок пока нет
  • TP 01
    TP 01
    Документ2 страницы
    TP 01
    Salim STlemcen
    Оценок пока нет
  • Examen 09
    Examen 09
    Документ7 страниц
    Examen 09
    Salim STlemcen
    Оценок пока нет
  • Cor tp1
    Cor tp1
    Документ3 страницы
    Cor tp1
    Salim STlemcen
    Оценок пока нет
  • Cor tp4
    Cor tp4
    Документ3 страницы
    Cor tp4
    Salim STlemcen
    Оценок пока нет
  • Telechargement
    Telechargement
    Документ1 страница
    Telechargement
    Salim STlemcen
    Оценок пока нет
  • Action Importation Exportation
    Action Importation Exportation
    Документ3 страницы
    Action Importation Exportation
    sof2012
    Оценок пока нет
  • Document Portefeuille de Competences
    Document Portefeuille de Competences
    Документ32 страницы
    Document Portefeuille de Competences
    Alex Cvr
    Оценок пока нет
  • Pfe GC 0016 PDF
    Pfe GC 0016 PDF
    Документ108 страниц
    Pfe GC 0016 PDF
    salif saad
    0% (1)
  • Cours
    Cours
    Документ3 страницы
    Cours
    Ferdaous Hd
    Оценок пока нет
  • 5 - Cas de Synthèse MRP2 - F PDF
    5 - Cas de Synthèse MRP2 - F PDF
    Документ6 страниц
    5 - Cas de Synthèse MRP2 - F PDF
    ahmed hamza khabouze
    100% (1)
  • Presentation PDF
    Presentation PDF
    Документ19 страниц
    Presentation PDF
    bahhaj
    100% (1)
  • Nikkiso 20DBB-05-R C3 A9vision 206000hrs
    Nikkiso 20DBB-05-R C3 A9vision 206000hrs
    Документ17 страниц
    Nikkiso 20DBB-05-R C3 A9vision 206000hrs
    Maxence Kouessi
    100% (1)
  • Ffir Léi: Imauine
    Ffir Léi: Imauine
    Документ1 страница
    Ffir Léi: Imauine
    marie.dubreuil
    Оценок пока нет
  • Exercice Corrigé Étude de Prix Semelle de Fondation
    Exercice Corrigé Étude de Prix Semelle de Fondation
    Документ10 страниц
    Exercice Corrigé Étude de Prix Semelle de Fondation
    Don Yassine
    100% (1)
  • Synthèse de La Fiche 34 - Quelles Sont Les Principales Défaillances Du Marché
    Synthèse de La Fiche 34 - Quelles Sont Les Principales Défaillances Du Marché
    Документ2 страницы
    Synthèse de La Fiche 34 - Quelles Sont Les Principales Défaillances Du Marché
    Mme et Mr Lafon
    Оценок пока нет
  • Politiques de Redevances de L'oaci Au Cameroun
    Politiques de Redevances de L'oaci Au Cameroun
    Документ16 страниц
    Politiques de Redevances de L'oaci Au Cameroun
    Francis Ntongo Ekani
    100% (1)
  • Prvsmian: Group
    Prvsmian: Group
    Документ4 страницы
    Prvsmian: Group
    BOINVILLE Jérôme
    Оценок пока нет
  • Grue Sur Véhicule Porteur
    Grue Sur Véhicule Porteur
    Документ4 страницы
    Grue Sur Véhicule Porteur
    Mebtouche Ziane
    Оценок пока нет
  • CV Noëlle Aka
    CV Noëlle Aka
    Документ5 страниц
    CV Noëlle Aka
    Anonymous B3T4Uetu
    Оценок пока нет
  • Chapitre Ordo
    Chapitre Ordo
    Документ19 страниц
    Chapitre Ordo
    Ma Hdi
    Оценок пока нет
  • Comptabilité Analytique
    Comptabilité Analytique
    Документ31 страница
    Comptabilité Analytique
    Hop Hop
    100% (3)
  • D01 - E01 - Results (Enregistré Automatiquement)
    D01 - E01 - Results (Enregistré Automatiquement)
    Документ11 страниц
    D01 - E01 - Results (Enregistré Automatiquement)
    HouDa SaiDi
    Оценок пока нет
  • Chimie Organique
    Chimie Organique
    Документ0 страниц
    Chimie Organique
    edgardokaf
    Оценок пока нет
  • M1 PrincipesPostulats PDF
    M1 PrincipesPostulats PDF
    Документ3 страницы
    M1 PrincipesPostulats PDF
    Francis Wambo
    Оценок пока нет
  • Réface de La Nouvelle Édition Du Livre
    Réface de La Nouvelle Édition Du Livre
    Документ9 страниц
    Réface de La Nouvelle Édition Du Livre
    Elijah Ward
    Оценок пока нет
  • Isabelle Adjani, Bajo El Encanto (Fiscal) de Portugal
    Isabelle Adjani, Bajo El Encanto (Fiscal) de Portugal
    Документ7 страниц
    Isabelle Adjani, Bajo El Encanto (Fiscal) de Portugal
    infoLibre
    Оценок пока нет
  • TD COURS Comptabilite de Gestion
    TD COURS Comptabilite de Gestion
    Документ3 страницы
    TD COURS Comptabilite de Gestion
    rakolova
    100% (1)
  • Devoir Surveille 26 Janvier 2009
    Devoir Surveille 26 Janvier 2009
    Документ4 страницы
    Devoir Surveille 26 Janvier 2009
    alexsauvey
    Оценок пока нет
  • Exercice Corrigé de Comptabilité Sur Les Travaux D
    Exercice Corrigé de Comptabilité Sur Les Travaux D
    Документ8 страниц
    Exercice Corrigé de Comptabilité Sur Les Travaux D
    Lahcen Moujane Nait Ichou
    Оценок пока нет
  • 0 Test de Evaluare Initiala Franceza Cls V
    0 Test de Evaluare Initiala Franceza Cls V
    Документ2 страницы
    0 Test de Evaluare Initiala Franceza Cls V
    sbyyy
    Оценок пока нет
  • Maintenance de L'infrastructure: Cours 4.1.5 Réglage - Tirage À Joints
    Maintenance de L'infrastructure: Cours 4.1.5 Réglage - Tirage À Joints
    Документ16 страниц
    Maintenance de L'infrastructure: Cours 4.1.5 Réglage - Tirage À Joints
    Ali Bda
    Оценок пока нет
  • 1st PANAFRICAN GAToCCC - 2021-Sénégal - 23-25 Juin - 20062021
    1st PANAFRICAN GAToCCC - 2021-Sénégal - 23-25 Juin - 20062021
    Документ4 страницы
    1st PANAFRICAN GAToCCC - 2021-Sénégal - 23-25 Juin - 20062021
    Jeanne Marie Annick Troh
    Оценок пока нет
  • Norme Isa
    Norme Isa
    Документ2 страницы
    Norme Isa
    Nora Hani
    Оценок пока нет
  • Etablie Le Design Brief Parfait
    Etablie Le Design Brief Parfait
    Документ10 страниц
    Etablie Le Design Brief Parfait
    Keïta Balla
    Оценок пока нет
  • Polycopié TP Chimie Decriptive
    Polycopié TP Chimie Decriptive
    Документ15 страниц
    Polycopié TP Chimie Decriptive
    bilal
    Оценок пока нет