#define _CRT_SECURE_NO_WARNINGS 1
//#include<stdio.h>
//void merge(int arr[], int ret)
//{
// for (int i = 0; i < ret-1; i++)
// {
// for (int j = i + 1; j < ret; j++)
// {
// if (arr[i] > arr[j])
// {
// int middle = arr[i];
// arr[i] = arr[j];
// arr[j] = middle;
// }
// }
// }
// for (int i = 0; i < ret; i++)
// {
// printf("%d ", arr[i]);
// }
//}
//int main()
//{
// int arr[10];
// int ret = sizeof(arr) / sizeof(arr[0]);
// printf("please enter ten numbers\n");
// for (int i = 0; i < ret; i++)
// {
// scanf("%d", &arr[i]);
// }
// merge(arr, ret);
//
// return 0;
//}
#include<stdio.h>
//二分法查找
int BinarySearch(int arr[], int ret,int num)
{
int right = 0;
int left = ret - 1;
int middle = (left + right) / 2;
while (right<left)
{
if (arr[middle] > num)
{
left = middle;
middle = (left + right) / 2;
}
else if (arr[middle] == num)
{
return middle;
}
else
{
right = middle;
middle = (left + right) / 2;
}
}
return left;
}
//将乱序的数字进行排序
void merge(int arr[], int ret)
{
for (int i = 0; i < ret - 1; i++)
{
for (int j = i + 1; j < ret; j++)
{
if (arr[i] > arr[j])
{
int middle = arr[i];
arr[i] = arr[j];
arr[j] = middle;
}
}
}
}
int main()
{
int arr[10];
int num;
int ret = sizeof(arr) / sizeof(arr[0]);
printf("please enter ten numbers\n");
for (int i = 0; i < ret; i++)
{
scanf("%d", &arr[i]);
}
merge(arr, ret);
printf("please enter a number that you wanna search\n");
scanf("%d", &num);
int asd=BinarySearch(arr, ret,num);
printf("subscript=%d", asd);
return 0;
}
蜡笔小流
- 粉丝: 2529
- 资源: 1360
最新资源
- 智能笔项目源代码全套技术资料.zip
- 在线考试系统项目源代码全套技术资料.zip
- 高等数学学习资料合集 高等数学(工本)mind
- 西门子V90效率倍增-伺服驱动功能库详解简易循环功能库之Homing-V90PN.mp4
- 自考04741计算机网络原理真题及答案及课件
- 基于STM32芯片开发 安防系统 完整作品
- 4_base.apk.1
- 学生导师双选系统项目源代码全套技术资料.zip
- 自考02318《计算机组成原理》试题及答案 2014-2018及课件
- 图书管理系统,仅供参考
- 数据科学与大数据毕业设计系统项目源代码全套技术资料.zip
- 全国自考02197概率论与数理统计(二)试题及答案2014-2019
- CHGCOLOR压缩包
- 多轮自动红队方法提升大语言模型安全性
- python语言kssp爬虫程序代码XQZQ.txt
- 亲测源码云赏V7.0微信视频打赏系统源码已测试完整无错版
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈