Tri shell

sonya -  
 Sonya -
Bonjour,
pouvez vous m'expliquer le principe du tri shell,et sa méthode de résolution car j'ai un BAC informatique (language imposé est le pascal)que je prépare et ce point m'est encore flou.merci d'avance
Configuration: Windows XP
Internet Explorer 7.0

2 réponses

  1. saradsaoudi
     
    bonsoir
    j'aimerais vous informer que le principe du tri Shell consiste à comparer dés le départ des éléments éloignés entre eux, pour diminuer les désordres dans le tableau . On facilite ainsi la tache pour les balayages ultérieurs . La différence entre les éléments comparés diminue au fur et à mesure jusqu'à la phase finale qui constitue le raffinage du tableau;
    et concernant sa résolution je vous propose cet algorithme dont j'espère qu'il va vous aider

    void triShell(int tableau[], const int longueur)
    {
    int pas, i, j, memoire;
    pas = 0;

    // Calcul du pas
    while(pas<longueur)
    {
    pas = 3*pas+1;
    }

    while(n!=0) // tant que le pas est > 0
    {
    pas = pas/3;
    for(i=n; i<longueur; i++)
    {
    memoire = tableau[i]; // valeur à décaler éventuellement
    j = i;

    while((j>(pas-1)) && (tableau[j-pas]>memoire))
    { // échange des valeurs
    tableau[j] = tableau[j-pas];
    j = j-pas;
    }
    tableau[j] = memoire;
    }
    }
    }
    2
    1. blux Messages postés 5036 Date d'inscription   Statut Modérateur Dernière intervention   3 455
       
      Problème posé depuis plus de 3 ans...
      De plus, tu ne fournis pas un algo, mais un programme en C...
      0
    2. Sonya
       
      merci .. mais là j'ai déjà eu mon bac et sur le point d'avoir ma licence (je prépare mon PFE) :D
      merci quand même ^_^
      0
  2. blux Messages postés 5036 Date d'inscription   Statut Modérateur Dernière intervention   3 455
     
    Salut,

    un bon début ici :

    https://fr.wikipedia.org/wiki/Tri_de_Shell

    et ici :

    http://www.dailly.info/algorithmes-de-tri/shell.php

    Merci google !
    0
    1. Zboubi
       
      Je pense que le mec avait déja utilisé google...
      0
    2. blux Messages postés 5036 Date d'inscription   Statut Modérateur Dernière intervention   3 455
       
      Commentaire inutile posté 3 ans après...
      0