写代码可以在整型有序数组中查找想要的数字,找到了返回下标,找不到返回-1.(折半查找)
来源:互联网 发布:北京税控开票软件 编辑:程序博客网 时间:2024/05/22 17:05
#include <stdio.h> int search(int arr[], int key, int left, int right)//封装一个函数用来调用{ while (left <= right) { int mid = left + (right - left) / 2; if (key <arr[mid]) { right = mid - 1; } else if (key > arr[mid]) { left = mid + 1; } else { return mid; } } return -1;//此处如果while循环找到了要找的数,程序就不会运行到这步}int main(){ int k = 0; printf("请输入要查找的数\n"); scanf("%d", &k); int arr[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; int ret = search(arr, k, 0, 9);//调用函数,与封装的函数相对应,定义ret为函数的返回值 if (ret == -1) { printf("没找到\n"); } else { printf("找到了%d\n", ret); } return 0;}
难点:折半查找不会使用,函数的封装与调用理解不透
阅读全文
0 0
- 写代码可以在整型有序数组中查找想要的数字,找到了返回下标,找不到返回-1.(折半查找)
- 写代码可以在整型有序数组中查找想要的数字,找到了返回下标,找不到返回-1.(折半查找)
- .写代码可以在整型有序数组中查找想要的数字,找到了返回下标,找不到返回-1.(折半查找)C语言
- 可以在整型有序数组中查找想要的数字,找到了返回下标,找不到返回-1.(折半查找)
- 写代码可以在整型有序数组中查找想要的数字,找到了返回下标,找不到返回
- 用折半查找法在整型有序数组中查找想要的数字,找到了返回下标,找不到返回-1.
- 折半查找算法,找一个整数中的某个数字,找到返回下标,找不到返回-1;
- 二分查找 基于有序数组 返回下标
- 在无重复数字的循环数组中查找给定数返回其下标
- 折半查找------在一个升序的有序数组中查找某个具体的数字
- 在杨氏矩阵中查找某个数,找到了返回true,找不到返回false。
- 在已知字符串中查找给定的子串,若找到返回位置,找不到返回-1
- 折半查找 在数组中插入一个数返回index
- 有序数组的折半查找
- 【二分查找】在一个长度未知的数组中查找一个数,返回其下标,时间复杂度O(logn)
- (二分查找思想)从有序递增旋转数组45679123 中找到数字6的位置
- 在有序递增数组中查找一个缺少的数字
- 折半法查找数组中指定数字的位置并返回
- Spark基本概念快速入门
- python里使用正则表达式来替换匹配成功的组名
- angularjs的增删改查
- EasyUI编辑弹出框设置
- 写LOg 生成日志
- 写代码可以在整型有序数组中查找想要的数字,找到了返回下标,找不到返回-1.(折半查找)
- java使用jsp servlet来防止csrf 攻击的实现方法
- 图形用户界面2
- 无约束优化基础--解的条件
- 算法(一) --DP动态规划(LIS和LCS)
- linux Centos6.5 下python2.6升级到2.7
- PullToRefresh+Banner无限轮播
- Java多线程--非公平锁
- C#个人重构之单例模式