LeetCode de base algorithme premier titre 120: algorithme de recherche binaire

La technologie pour améliorer est un processus graduel, donc je parle des questions leetcode algorithme de niveau le plus simple a commencé à écrire, puis >  Pour difficulté intermédiaire, enfin terminé toute la difficulté difficile. Actuellement, je choisi le langage C, Python et Java comme langage de mise en uvre, parce que ces trois langues est tout à fait typique. En raison de l'espace et >  L'énergie est limitée, la réalisation d'autres langues d'amis qui sont intéressés, s'il vous plaît essayer vous-même. principale difficulté à parler en même temps, je vais ajouter d'autres choses que je pouvais du système d'exploitation à la pile de protocoles, de distribution >  Parlez au grand cadre de données, et de parler de gros volumes de données à l'intelligence artificielle, ... ....

Si vous avez des questions ou des commentaires après l'article lettre privée à moi.

Je continuerai à le partager, votre attention s'il vous plaît.

LeetCode 704. recherche binaire (Binary Search)

Description du problème:

Etant donné un n éléments ordonnés (ascendant) nums tableau d'entiers et un objectif de valeur de consigne, une fonction d'écriture dans la recherche nums cible, si les valeurs cibles de l'indice retournés, sinon -1.

exemple:

langage C:

algorithme de recherche binaire est très commun, en fait, devant le titre que nous avons utilisé cet algorithme.

Je ne l'ai pas l'intention de le travailler, mais ne manquez pas Energizer me sens encore bien.

Pour commencer, de rappeler, Trouver dans un local binaire est une séquence ordonnée, de sorte que le nombre de colonnes est un non-ordonnée pour fonctionner, au premier ordre.

Une fois, je suis tombé sur une interview, regardez jusqu'à la moitié, n'a pas déterminé si un tableau ordonné.

idée de recherche binaire est très simple, en général, nous devons définir deux variables entier gauche et à droite, respectivement, enregistrez le début et la fin des indices de souscript de tableau.

puis détermine une relation d'amplitude entre les nums cibles , et à ajuster en permanence la valeur de la gauche et à droite, afin de trouver continue étroite, obtenu le résultat final.

Code spécifique, comme suit:

Java implémentation du langage:

la mise en uvre du langage C et la réalisation de Java fondamentalement la même, ne pose. Code est la suivante:

la mise en uvre de python de la langue:

la mise en uvre du langage C et la réalisation du python sont fondamentalement les mêmes, ne pose. Code est la suivante:

La nouvelle Aston Martin Vantage remarque carte publiée! Publier une nouvelle voiture ou années
Précédent
Industrie | Nvidia ou de ne pas lancer la nouvelle architecture de Turing ray-tracing GPU, voici quelques suspects
Prochain
Une seconde pendant l'hiver? température minimale de Beijing de 5,1 , mais le plus terrible dans le dos ......
Samsung a également appris que Huawei mis en? Galaxy S10 exposée nouveau matériau: AI dual-core
Construire l'éco-industrielle chaîne, pour construire des voies autour de la cuisine écologique sain santé: Une meilleure vie organique
Le nouveau XC60 sera 17 pré-Novembre et 20 Décembre énumérés
Dong Mingzhu pourquoi Réparateur pressé d'un tel? Zhuhai argent longtemps sur le marché trop tôt!
Il sera le prochain NMD? adidas Originals 2018 New Prophere Débuts officiels!
Neuf modèles libéralisation complète de la mise à jour! Yu Chengdong: EMUI 9 pour vous donner une expérience différente
chiffre officiel d'Apollon publié IE: seulement pour des performances extrêmes de
« cantine Night » Réalisateur: « les gens mis à faire rire, » Wu Xin je veux interroger sa justice Shu
piscine mur | Shu Qi dire au revoir à l'industrie du divertissement, Shawn suit alors perdre le rythme de la déesse?
Q & A | Voulez-vous acheter une marque chinoise de voiture de luxe? A répondu aux gens Netizens larmes
17 d'une seule pièce à l'industrie du film, « l'eau, l'électricité », YuYongFu polytechnique mâle peut transporter Ali Pictures?