Étiquette : liste



Placer les nombres négatifs au début de la liste et les nombres positifs à la fin de la liste

Exercice:  Placer les nombres négatifs au début de la liste et les nombres positifs à la fin de la liste

Écrire une fonction Python NegPos(L) qui permet de placer les nombres négatifs au début de la liste L et les nombres positifs à la fin de la liste L en gardant leurs ordres.

N.B : Faites l’exercice avec deux méthodes :

  1. En ajoutant d’autres listes supplémentaires.
  2. On travaille sans ajouter aucune autre liste que la liste L

Exemple d’exécution :

>>>L=[1,2,-5,8,-6,-2,-4,-9,7,9,-8]
>>> supprimer _redoublant(L)
[-5,-6,-2,-4,-9,-81,2,8,7,9]


Insérer une valeur val dans une liste triée

Exercice:Insérer une valeur val dans une liste triée

Écrire une fonction Python inserer( val , L ) qui permet d'insérer une valeur val dans une liste L triée, sans ajouter d’autres liste supplémentaire.

Exemple d’exécution :

>>>L=[ 2,4,8,10,15,19,20,25]
>>> insert(6,L)
[ 2,4,8,6,10,15,19,20,25]


Supprimer tous les zéros d’une liste

Ecrire une fonction Python SupprimerZero(L) qui supprime tous les zéro d’une liste L sans ajouter des listes supplémentaires.

Exemple d’exécution :

>>>L=[ 2 , 5 , 8 , 0 , 0 , 0 , 0 , 0 , 5 , 2 , 3 , 6 , 6 , 6 , 8 ]
>>> SupprimerZero(L)
[2, 5, 8, 5, 2, 3, 6, 6, 6, 8]



Expression bien parenthésée

Fonction Python parenthesage( expression ) qui retourne True su l'expression est bien parenthésée et False sinon en utilisant des piles, l'expression est sous forme une chaîne de caractère passée en argument est ou non bien parenthésée en utilisant les piles Avec les parenthèses ( et ) une expression est bien parenthésée si :
  • Il ne contient aucune parenthèse ’(’ ou ’)’, ou
  • Il est de la forme ’(mot)’ avec expression est une expression bien parenthésée, ou
  • Il est la concaténation de 2 expressions bien parenthésées.
Catégories: Tous les programmes > Les structures de données > File et pile

Renverser une file d’attente

Fonction Python renverser( F ) qui retourne la file F renversée ( l’élément de la tête sera situé à la queue et ainsi de suite ) en utilisant seulement une pile P et les primitives des PILE et les primitives des FILE, F est une file d'attente passée en paramètre.
Catégories: Tous les programmes > Les structures de données > File et pile

Les primitives d’une file d’attente : FIFO

Les primitives d'une file d'attente (FIFO: First In/First Out, c'est-à-dire «premier arrivé, premier servi») ou les opérations caractéristiques d’une file d'attente sont  :
  • creer_file( ): qui permet de créer et retourner une file
  • filevide( F ) : Retourne True si la file est vide et False sinon
  • enfiler( F , e ) : "appelé aussi Enqueue" permet d'ajouter l’élément e à la fin de la file F
  • defiler ( F ) : "appelé aussi Dequeue" permet de renvoie le premier élément de la file et le retire
  • tete( F ) : Retourne le premier élément de la file F.
  • taille( P ) : Retourne la taille de la file P
Implémentation des ces primitives en langage Python seront réalisées en utilisant les listes.
Catégories: Tous les programmes > Les structures de données > File et pile

Les primitives d’une pile: LIFO

Les primitives d'une piles ou les opérations caractéristiques d’une pile sont :
  • creer_pile( ): qui permet de créer et retourner une pile
  • pilevide( P ) : Retourne True si la pile est vide et False sinon
  • empiler( P , e ) : Ajouter l’élément e au somme de la pile P
  • depiler ( P ) : supprimer l’élément du sommet
  • sommet( P ) : Retourne l’élément du sommet de la pile
  • taille( P ) : Retourne la taille de la pile P
Implémentation des ces primitives seront réalisées en utilisant les listes.
Catégories: Tous les programmes > Les structures de données > File et pile

Comparaison entre les tris: Insertion, sélection, à bulles, rapide et fusion

Programme Python qui compare la performance et la rapidité entre les tris déjà vus (Tri par sélection, par insertion, à bulles, rapide et fusion) en calculant le temps d'exécution de chaque tri sur une liste générée aléatoirement de taille 1000.

Catégories: Tous les programmes > Les structures de données > Les listes > Tri et recherche

Tri par fusion

Fonction Python tri_fusion(L) qui permet de trier une liste L en utilisant l'algorithme de tri par fusion, L est une liste passée en paramètre. Principe de Tri rapide Le principe du tri par fusion, comme le tri rapide, basé à nouveau d’un tri suivant le paradigme diviser pour régner dont le principe est le suivant:
  • On divise en deux moitiés la liste à trier.
  • On trie chacune d’entre elles.
  • On fusionne les deux moitiés obtenues pour reconstituer la liste triée.
Catégories: Tous les programmes > Les structures de données > Les listes > Tri et recherche

Tri Rapide – quicksort –

Fonction Python tri_rapide(L) qui permet de trier une liste L en utilisant l'algorithme de tri rapide, L est une liste passée en paramètre.

Principe de Tri rapide

Le principe du tri rapide (en anglais quicksort) est de diviser la liste en deux sous listes telles que les éléments de la première soient inférieurs aux éléments de la seconde. On recommence jusqu'à avoir des sous-listes réduites à un seul élément.

Catégories: Tous les programmes > Les structures de données > Les listes > Tri et recherche

Top