Maison  >  Article  >  interface Web  >  Analyse principale de la méthode de tri par tableau dans les compétences js_javascript

Analyse principale de la méthode de tri par tableau dans les compétences js_javascript

WBOY
WBOYoriginal
2016-05-16 16:31:001538parcourir

Cet article analyse le principe de la méthode de tri par tableau en js à travers des exemples. Partagez-le avec tout le monde pour votre référence. L'analyse spécifique est la suivante :

Récemment, dans un projet Baidu, je dois trier des tableaux. Bien sûr, j'ai naturellement pensé au début à la méthode de tri des tableaux. L'application de cette méthode est très simple, à peu près comme suit :

Copier le code Le code est le suivant :
window.onload=function(){
var arr=[2,55,55,1,75,3,9,35,70,166,432,678,32,98];
      var arr2=["George","John","Thomas","James","Adrew","Martin"];
         fonction arrsort(a,b){
              retourner a-b ;
            }
console.log(arr.sort(arrsort)); //Le tri des nombres nécessite une fonction. Si vous souhaitez trier du plus grand au plus petit, retournez b-a;
          console.log(arr2.sort()); // Les lettres ne sont pas obligatoires
>

Mais j'ai soudain pensé : pourquoi l'utilisation du tri est-elle si simple et quel est son principe ? J'ai donc essayé de trier le tableau sans trier. Le principe est de trouver la valeur minimale du tableau et de l'insérer dans le nouveau tableau, puis de le supprimer. la valeur minimale dans le tableau et mise à jour Après le tableau, continuez à trouver la valeur minimale à insérer et bouclez comme ceci Le code est le suivant :
.
Copier le code Le code est le suivant :
window.onload=function(){
var arr=[2,55,55,1,75,3,9,35,70,166,432,678,32,98];
var len=arr.length;
console.log(arr.join(","));
var newarr=[];
pour(var i=0;i newarr.push(Math.min.apply(null,arr)); //Insérer la valeur minimale dans le nouveau tableau
arr.splice(r(arr,Math.min.apply(null,arr)),1); //Après l'insertion, supprimez immédiatement la valeur minimale
>
//Trouver la position de la valeur minimale dans le tableau
         fonction r(s,v){
pour(k en s){
Si(s[k] == v){
                      return k;
                 }
                }
            }
console.log(newarr.join(","))
>

PS : C'est juste une méthode que j'ai écrite. Le principe du tri ne devrait pas être comme ça. Vous pouvez également utiliser la méthode des bulles pour trier le code. Bien sûr, le code ci-dessus concerne uniquement le tri des tableaux numériques, pour trier les chaînes, vous pouvez considérer la méthode localeCompare des chaînes.

J'espère que cet article sera utile à la conception de la programmation JavaScript de chacun.

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn