Heim > php教程 > PHP开发 > Implementierung der binären Suche in C-Sprache

Implementierung der binären Suche in C-Sprache

高洛峰
Freigeben: 2016-12-19 16:21:38
Original
1453 Leute haben es durchsucht

Binäre Suche:

a ist das zu durchsuchende Array. Voraussetzung für die binäre Suche ist, dass die a-Daten sortiert sind. key ist die zu durchsuchende Variable und n ist die Länge des Arrays a.

int binär( int *a, int key, int n )
{
int left = 0, right = n - 1, mid = 0;
mid = ( left + right ) / 2;
while( left < right && a[mid] != key )
{
if( a[mid] < key )
left = mid + 1;
else if( a[mid] > key )
right = mid - 1;
mid = ( left + right ) / 2;
}
if( a[mid] == key ) return mid;
return -1;
}

Aufruf:

Suchen Sie die Position des Index von Array b in Array a (wenn a Wenn die Daten in b nicht vorhanden sind, verwenden Sie stattdessen -1.

int main()
{
int a[] = {1,2,3,4,5,6,7,8,9,12,13,45,67,89 ,99,101,111,123,134,565,677};
int b[] = { 677, 1, 7, 11, 67 };
int i;
for( i=0; i
{
print f( „ %dn“, binär( a, b[i], sizeof(a)/sizeof(a[0])));
}
return 0;
}



Weitere Artikel zur Implementierung der binären Suche in C-Sprache finden Sie auf der chinesischen PHP-Website

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Empfehlungen
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage