

Quelle est la complexité temporelle d'un programme utilisant l'algorithme de recherche binaire ?
La complexité temporelle d'un programme utilisant l'algorithme de recherche binaire est le "niveau logarithmique". La recherche binaire est une méthode de recherche très efficace. La complexité de l'algorithme est le nombre de boucles while, et la complexité temporelle peut être exprimée par « O(h)=O(log2n) ».
L'environnement d'exploitation de ce tutoriel : système Windows 7, ordinateur Dell G3.
La complexité temporelle d'un programme utilisant l'algorithme de recherche binaire est de "niveau logarithmique".
Recommandations associées : "Apprentissage en programmation"
La recherche binaire est également appelée recherche binaire, qui est une méthode de recherche plus efficace. Cependant, la recherche binaire nécessite que le tableau linéaire adopte une structure de stockage séquentielle et que les éléments du tableau soient classés par mots-clés.
Processus de recherche :
Tout d'abord, en supposant que les éléments du tableau sont classés par ordre croissant, comparez le mot-clé enregistré au milieu du tableau avec le mot-clé de recherche , s'ils sont égaux, alors la recherche est réussie ; sinon, l'enregistrement de la position médiane est utilisé pour diviser le tableau en sous-tableaux avant et dernier. Si le mot-clé enregistré en position médiane est supérieur au mot-clé de recherche, le précédent. la sous-table fait l'objet d'une recherche plus approfondie, sinon la dernière sous-table fait l'objet d'une recherche plus approfondie. Répétez le processus ci-dessus jusqu'à ce qu'un enregistrement répondant aux conditions soit trouvé, ce qui rend la recherche réussie, ou jusqu'à ce que la sous-table n'existe plus, auquel cas la recherche échoue.
Complexité de l'algorithme :
L'idée de base de la recherche binaire est de diviser n éléments en deux parties à peu près égales et de comparer a[n/2] avec x , si x=a[n/2], alors x est trouvé et l'algorithme se termine si xa [n/2] , puis recherchez simplement x dans la moitié droite du tableau a.
La complexité temporelle est le nombre de boucles while.
Il y a n éléments au total,
suit progressivement n, n/2, n/4,....n/2^k (le nombre d'éléments restant sera exploité ensuite ), où k est le nombre de cycles
Puisque votre n/2^k est arrondi >=1
c'est-à-dire n/2^k=1
peut être obtenu k=log2n, (c'est le logarithme de n avec base 2 comme base)
Donc la complexité temporelle peut être exprimée comme O(h)=O(log2n)
Ce qui suit fournit un pseudo-code pour l'implémentation de la recherche binaire :
BinarySearch(max,min,des) mid-<(max+min)/2 while(min<=max) mid=(min+max)/2 if mid=des then return mid elseif mid >des then max=mid-1 else min=mid+1 return max
La méthode de recherche binaire est également appelée méthode de recherche binaire. Elle utilise pleinement la relation d'ordre entre les éléments et adopte la stratégie diviser pour régner. avec O(log n) dans le pire des cas. Son idée de base est la suivante : (en supposant que les éléments du tableau sont classés par ordre croissant) divisez n éléments en deux moitiés avec à peu près le même nombre, prenez a[n/2] et comparez-le avec le x que vous voulez trouver, si x= a[n/ 2] alors x est trouvé et l'algorithme se termine ; si x
Pour plus d'articles connexes, veuillez visiter le Site Web PHP chinois ! ! 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!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Comment utiliser C# pour écrire un algorithme de recherche binaire. L'algorithme de recherche binaire est un algorithme de recherche efficace. Il trouve la position d'un élément spécifique dans un tableau ordonné avec une complexité temporelle de O(logN). En C#, nous pouvons écrire un algorithme de recherche binaire en suivant les étapes suivantes. Étape 1 : Préparer les données Tout d’abord, nous devons préparer un tableau trié comme données cibles pour la recherche. Supposons que nous voulions trouver la position d'un élément spécifique dans un tableau. int[]données={1,3,5,7,9,11,13

Une racine cubique est une valeur entière qui, multipliée par elle-même trois fois de suite, donne la valeur d'origine. Dans cet article, nous allons écrire un programme Java qui utilise la recherche binaire pour trouver la racine cubique d'un nombre. Trouver la racine cubique d'un nombre est une application de l'algorithme de recherche binaire. Dans cet article, nous verrons en détail comment utiliser la recherche binaire pour calculer les racines cubiques. Exemple d'entrée-sortie Exemple-1 :Input:64Output:4 Par exemple, la racine cubique de 64 est 4 et la sortie est 4. Exemple 2 : Entrée : 216 Sortie : 6 Par exemple, la racine cubique de 216 est 6 et la sortie est 6. Recherche binaire La recherche binaire est un algorithme utilisé pour trouver des éléments (c'est-à-dire des clés dans un tableau trié). Fonctionnement de l'algorithme binaire

Nous savons que la méthode de recherche binaire est l’algorithme de tri le plus adapté et le plus efficace. Cet algorithme fonctionne sur des séquences triées. L'algorithme est simple, il trouve simplement l'élément du milieu, puis divise la liste en deux parties et se déplace vers la sous-liste de gauche ou la sous-liste de droite. Nous connaissons son algorithme. Nous allons maintenant voir comment utiliser la technique de recherche binaire dans un environnement multi-thread. Le nombre de threads dépend du nombre de cœurs présents dans le système. Jetons un coup d'œil au code pour avoir une idée. Exemple#include<iostream>#defineMAX16#defineMAX_THREAD4usingnamespacestd;//placearr,keyandothervariabl

Le langage de programmation C propose deux techniques de recherche. Ils sont les suivants : Recherche linéaire Recherche binaire Recherche binaire Cette méthode ne convient qu'aux listes ordonnées. La liste donnée est divisée en deux parties égales. La clé donnée est comparée à l'élément du milieu de la liste. Ici, trois choses peuvent se produire, comme suit : Si l'élément du milieu correspond au mot-clé, la recherche se terminera avec succès ici. Si l'élément du milieu est plus grand que le mot-clé, la recherche aura lieu dans la partition de gauche. Si l'élément du milieu est plus petit que le mot-clé, la recherche sera effectuée sur la partition de droite. Entrée (i/p) - liste non triée d'éléments, mots-clés. Sortie (o/p)-succès-si échec de la recherche du mot-clé-sinon key=20mid=(low+high)/2 Programme 1 Ce qui suit est l'utilisation de la recherche binaire dans

Comment implémenter un algorithme de recherche binaire en utilisant Python ? L'algorithme de recherche binaire, également connu sous le nom d'algorithme de recherche binaire, est un algorithme de recherche efficace. Il fonctionne sur des tableaux ou des listes ordonnés, en limitant la recherche en comparant la valeur cible aux éléments au milieu du tableau. Ce qui suit présentera comment implémenter l'algorithme de recherche binaire en Python et fournira des exemples de code spécifiques. Idée d'algorithme : comparez la valeur cible avec l'élément du milieu du tableau ; s'ils sont égaux, renvoyez la position de l'élément si la valeur cible est supérieure à l'élément du milieu, alors à droite ;

Comment utiliser Java pour implémenter un algorithme de recherche binaire L'algorithme de recherche binaire est une méthode de recherche efficace adaptée aux tableaux triés. Son idée de base est de restreindre continuellement la plage de recherche, de comparer la valeur de recherche avec les éléments du milieu du tableau et de décider s'il faut continuer la recherche dans la moitié gauche ou la moitié droite en fonction du résultat de la comparaison jusqu'à ce que l'élément cible soit trouvé ou la plage de recherche est réduite à vide. Ci-dessous, nous présenterons en détail comment implémenter l'algorithme de recherche binaire en Java. Étape 1 : Implémenter la méthode de recherche binaire publicclassBinarySearch

Dans ce problème, on nous donne un tableau trié de nombres rationnels. Nous devons utiliser un algorithme de recherche binaire pour rechercher un élément donné de ce tableau de nombres rationnels sans utiliser d'opérations à virgule flottante. Les nombres rationnels sont des nombres exprimés sous la forme p/q, où p et q sont tous deux des nombres entiers. Par exemple, ⅔, ⅕. La recherche binaire est une technique de recherche qui permet de trouver des éléments en regardant au milieu d'un tableau. Utilisé pour rechercher des éléments dans un tableau trié de nombres rationnels à l'aide d'une recherche binaire, où les opérations en virgule flottante ne sont pas autorisées. Nous comparerons le numérateur et le dénominateur pour savoir quel élément est le plus grand ou quel élément est celui à trouver. Exemple Créons un programme pour cela, #include<stdio.h>structRational{ &am

Analyse d'algorithme PHP : Comment utiliser un algorithme de recherche binaire pour localiser rapidement des éléments dans un tableau ordonné ? Présentation : L'algorithme de recherche binaire est un algorithme de recherche efficace qui convient à la recherche d'éléments spécifiques dans un tableau ordonné. Cet article présentera en détail le principe de l'algorithme de recherche binaire et donnera des exemples de code PHP. Principe : L'algorithme de recherche binaire localise rapidement l'élément cible en réduisant de moitié la plage de recherche à plusieurs reprises. Le processus est le suivant : d'abord, limitez la plage de recherche au début et à la fin du tableau ; puis calculez l'index de l'élément du milieu et comparez-le avec l'élément cible ;