Maison  >  Article  >  interface Web  >  js récursion de recherche binaire et lors de l'écriture du partage de code

js récursion de recherche binaire et lors de l'écriture du partage de code

小云云
小云云original
2018-03-08 16:19:401544parcourir

Cet article partage principalement avec vous la récursivité de la recherche binaire js et lors de l'écriture du code, j'espère qu'il pourra aider tout le monde.

1. Récursion
Contrôle principalement trois variables : start end mid , start end mid , répétez-le et tout ira bien.

const data = [18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1]function Recursive(s,data){

    let len = data.length
    let start = 0
    let end = len-1
    let mid
    return find(start,end,s)}function find(start,end,s){

       mid =Math.ceil((end+start)/2) 

        if (s==data[mid]) {            return s
        }         else if(s>data[mid] && start <= end) {

            end = mid-1
            return find(start,end,s)
        }        else if(s<data[mid] && start <= end){

         start  = mid+1

          return  find(start,end,s)

        }        else{            return null
        }

}
let v = f(15,data)
console.log("vvvv",v)
  1. boucle while

const data = [18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1]function while_find(s){
    let len = data.length
    let start = 0
    let end = len-1
    let mid

    while(start <= end){

        mid =Math.ceil((end+start)/2)

        if (s<data[mid]) {

            start = mid+1
        }        else if(s>data[mid]){            end = mid-1 
        }        else{            return s
        }


    }  return null}
let v= while_find(8)
console.log("vvvv",v)

S'inspire principalement de cet article. Cliquez pour l'ouvrir. Il existe également quelques variantes du. algorithme binaire. Les étudiants intéressés peuvent le consulter et il est très bien écrit.

Recommandations associées :

Partage d'exemples d'algorithme de recherche binaire php

exemple de code de recherche binaire php pour récursif et non récursif implémentations

algorithme de base js : tri à bulles, recherche binaire

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
Article précédent:Analyse Arguments.length en jsArticle suivant:Analyse Arguments.length en js