Tri de Shell exemple Java
Quelqu'un peut-il me donner des exemple sur le tri de shell? Je suis une nouvelle personne ici qui doivent apprendre à propos de tri de shell, mais je dois d'abord trouver un Java tri de shell exemple. J'ai trouvé un exemple dans Google, mais c'est trop difficile.
OriginalL'auteur Nightstalker | 2011-01-28
Vous devez vous connecter pour publier un commentaire.
Avez-vous essayé la lecture de l'article de wikipédia en premier ici? Il fournit une assez bonne bases avec une illustration et des exemples.
Par la suite, vous pourriez, comme pour vérifier certaines des applets java & animations illustrant ce processus de tri ici.
J'espère que, après que, vous pouvez trouver le code java ici, par exemple, beaucoup plus lisible.
Espère que cela aide.
OriginalL'auteur evandrix
Ici, ce code est très simple :
Je l'ai volé à partir d'un livre appelé Structures de données et un Algorithme d'Analyse en Java. C'est un très bon livre facile à comprendre. Je vous conseille de le lire.
J'ai inclus le livre, vous pouvez le lire, il est très parfait.
J'ai l'habitude de ne pas jaillir sur la algos...mais c'est génial!
Très facile à comprendre. Merci d'être aussi clair.
OriginalL'auteur Adelin
Peut-être, ce java code va vous aider.
OriginalL'auteur sgokhales
Tri de Shell améliore le tri par insertion en comparant les éléments séparés par un écart de plusieurs postes.
Cela permet un élément à prendre "plus grand" à l'égard de la position prévue. Plusieurs passages sur les données sont prises avec de plus en plus petites tailles écart. La dernière étape de tri de Shell est une simple insertion de tri, mais d'ici là, le tableau de données est garanti d'être presque triées.
Ce code peut vous aider dans la compréhension de la logique de mieux.
Je pense que vous avez besoin pour commencer avec h dans la boucle: for(int i = h-1; i < un.longueur; i++). Causer d'autres sur j-h expression vous donnera -1 et le résultat sera un 0-l'utilisation du cycle.
C'est en fait la Knuth de tri. Autres que le seul problème que je vois est la règle qui devrait être <= un.longueur / 3 n'est pas suivi dans votre algorithme. Il est supposé être h <= Math.ceil(un.longueur / 3) mais personne ne semble compter que.
OriginalL'auteur ykombinator
Ici est une visualisation de tri de shell pour un python de mise en œuvre:
OriginalL'auteur slashdottir
J'ai trouver la meilleure façon de comprendre tri de shell est de le décomposer en segments:
OriginalL'auteur benscabbia
Voici un exemple:
OriginalL'auteur Teknophilia
Classique de type primitif de mise en œuvre:
P. S.: Vérifier ce lien pour d'autres algorithmes de tri (ils sont en c++, cependant, facilement portable pour java).
OriginalL'auteur Denys S.
liste est de type int[];
GapArray prises de arcticle de Marcin Ciura
http://sun.aei.polsl.pl/~mciura/publikacje/shellsort.pdf
OriginalL'auteur user3593346
Voici un lien vidéo: https://youtu.be/SCBf7aqKQEY
Le gars a fait une bonne vidéo de tri de shell!!
Et un code simple:
OriginalL'auteur Siddharth Arora
Utiliser cette
OriginalL'auteur JUNTAE