PUSH_SWAP

Yann PROBST

#include "my.h"

1/7

I) OBJECTIF ET GESTION DU PROJET

Trier une liste de nombre

Être le plus performant niveau temps

2/7

II) Organisation

Bootstrap

Réflexion algo

Follow up

Kick-off

Rendu

Liste simlement chainées

Circulaire + Double

OPTIMISATION

3/7

III) Le push_swap

L'algo:

 

Boucler jusqu'a ce que ma liste principale soit vide:

 

1) trouver le plus petit nombre

2) le palcer devant

3) mettre dans la liste b

 

4) remonter les nombres dans la liste principale

4/7

IV) Problèmes et solutions

1) Lenteur de l'affichage

 

2) Parcourrir la liste

 

3) Implémentation des listes chainées circulaires dans les deux sens

Solution: Bufferiser

Solution: Circulaire dans les deux sens

5/7

V) Améliorations possibles

Faites entrer l'accusé:

void            my_show_list(t_list *list)
{
  t_list        *elem;
  int           i;

  i = 0;
  elem = list;
  while (elem != list || i < 1)
    {
      printf("%d\n", elem->nb);
      elem = elem->next;
      i++;
    }
}

6/7

7/7

PUSH_SWAP

By Yann Probst

PUSH_SWAP

  • 44