Maison  >  Article  >  interface Web  >  JS implémente un tri simple

JS implémente un tri simple

小云云
小云云original
2018-03-19 16:15:191372parcourir

Cet article partage principalement avec vous JS pour implémenter un tri simple, y compris le tri par bulles et le tri par sélection, j'espère qu'il pourra vous aider.

1. Tri des bulles : comparez deux éléments adjacents dans l'ordre et échangez les tailles

var arr = [3, 5, 15, 36, 36, 27, 2, 38];
    //冒泡排序
    function bubbleSort(arr) {
        var len = arr.length;
        for (var i = 0; i < len - 1; i++) {
            for (var j = 0; j < len - 1 - i; j++) {
                if (arr[j] > arr[j + 1]) {
                    var temp = arr[j + 1];
                    arr[j + 1] = arr[j];
                    arr[j] = temp;
                }
            }
        }
        //return arr;
    }
    bubbleSort(arr);
     for (var i = 0; i < arr.length; i++) {
            alert(arr[i]);
     }

2. Tri par sélection : sélectionnez l'élément de meilleure valeur, mettez d'abord, puis continuez à sélectionner la meilleure valeur parmi les éléments restants.

//选择排序
  var arr = [3, 5, 15, 36, 36, 27, 2, 38];
    function selectSort(arr) {
        var len = arr.length;
        var minIndex, temp;
        for (var i = 0; i < len - 1; i++) {
            minIndex = i;
            for (var j = i + 1; j < len; j++) {
                //寻找最小的值,保存索引
                if (arr[j] < arr[minIndex]) {
                    minIndex = j;
                }
            }
            temp = arr[i];
            arr[i] = arr[minIndex];
            arr[minIndex] = temp;
        }
    }
 selectSort(arr);
  for (var i = 0; i < arr.length; i++) {
            alert(arr[i]);
     }

Recommandations associées :

tri à bulles de tri simple php et tri par sélection

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

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