
La mise en œuvre du tri rapide est un peu délicate, mais si vous le comprenez et continuez à pratiquer, ce sera plus facile.
const quickSort = (arr, lo, hi) => { if (lo >= hi) { return ; } const pivotIndex = getPivotIndex(arr, lo, hi); quickSort(arr, lo, pivotIndex-1); quickSort(arr, pivotIndex+1, hi); } const getPivotIndex = (arr, lo, hi) => { const pivot = arr[hi]; let idx = lo-1; for (let i = lo; i< hi; i++) { if (arr[i] <= pivot) { idx++; const temp = arr[i]; arr[i] = arr[idx]; arr[idx] = temp; } } idx++; const temp = arr[idx]; arr[idx] = pivot; arr[hi] = temp; return idx; } const arr = [9,1,0,3,2,5,9,10, 11]; quickSort(arr, 0, 8); console.log(arr); // [0, 1, 2, 3, 5, 9, 9, 10, 11]
Essayez de le faire fonctionner à sec, vous obtiendrez une image claire.
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!
Vérifiez l'état du port occupé dans Windows
Quelles sont les méthodes pour récupérer les données du serveur ?
Avantages du téléchargement du site officiel de l'application Yiou Exchange
Quels sont les DNS couramment utilisés ?
Qu'est-ce que la carte de contrôle d'accès NFC
Explication détaillée de la commande imp dans Oracle
que signifie OEM
Qu'est-ce que le fil coin exactement ?