Algorithme de recherche binaire langage C
La recherche binaire est une demi-recherche, son idée de base Oui : Sélectionnez d'abord l'enregistrement au milieu du tableau, comparez sa clé avec la clé donnée, si elles sont égales, la recherche est réussie si la valeur de la clé est supérieure à la valeur de la clé, l'élément que vous recherchez doit ; soyez dans le sous-tableau de droite, puis continuez la recherche divisée par deux sur le sous-tableau droit : si la valeur clé est inférieure à la valeur clé, l'élément que vous recherchez doit être dans le sous-tableau gauche, et continuez la recherche divisée par deux dans le sous-tableau gauche. Ce processus est répété jusqu'à ce que la recherche réussisse ou échoue (ou que la plage de recherche soit 0).
Code d'implémentation :
(1) Fonction personnalisée binaire_search() pour implémenter la recherche binaire.
(2) La fonction main() sert de fonction d'entrée du programme. Le code du programme est le suivant :
#include <stdio.h> int binary_search(int key,int a[],int n) //自定义函数binary_search() { int low,high,mid,count=0,count1=0; low=0; high=n-1; while(low<high) //査找范围不为0时执行循环体语句 { count++; //count记录査找次数 mid=(low+high)/2; //求中间位置 if(key<a[mid]) //key小于中间值时 high=mid-1; //确定左子表范围 else if(key>a[mid]) //key 大于中间值时 low=mid+1; //确定右子表范围 else if(key==a[mid]) //当key等于中间值时,证明查找成功 { printf("查找成功!\n 查找 %d 次!a[%d]=%d",count,mid,key); //输出査找次数及所査找元素在数组中的位置 count1++; //count1记录查找成功次数 break; } } if(count1==0) //判断是否查找失敗 printf("查找失敗!"); //査找失敗输出no found return 0; } int main() { int i,key,a[100],n; printf("请输入数组的长度:\n"); scanf("%d",&n); //输入数组元素个数 printf("请输入数组元素:\n"); for(i=0;i<n;i++) scanf("%d",&a[i]); //输入有序数列到数组a中 printf("请输入你想查找的元素:\n"); scanf("%d",&key); //输入要^找的关键字 binary_search(key,a,n); //调用自定义函数 printf("\n"); return 0; }
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

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Télécharger la version Mac de l'éditeur Atom
L'éditeur open source le plus populaire

PhpStorm version Mac
Le dernier (2018.2.1) outil de développement intégré PHP professionnel

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

Version Mac de WebStorm
Outils de développement JavaScript utiles

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