折半查找.c

来自「数据结构学习用到的一些程序!!里面有二叉树相关的几个」· C语言 代码 · 共 33 行

C
33
字号
#include <stdio.h>
#include <malloc.h>
int search(int *arr,int n,int x)
{
	int first,last,mid;
	first=0;
	last=n;
    while(first<=last)
	{
		mid=(first+last)/2;
		if(arr[mid]==x)return mid+1;
		else if(arr[mid]>x) last=mid-1;
		else first=mid+1;
	}
	return 0;
}

void main()
{
	int n,*arr,i,k;
	printf("输入数据个数:\n");
	scanf("%d",&n);
	arr=malloc(sizeof(int));
	printf("输入数据:\n");
	for(i=0;i<n;i++)
		scanf("%d",&arr[i]);
	printf("输入查询数据:\n");
	scanf("%d",&k);
	printf("查询结果:%d\n",search(arr,n,k));
}

	

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?