数组相邻间隔1进行查找
来源:互联网 发布:ubuntu系统版本 编辑:程序博客网 时间:2024/06/03 20:12
有一个int型数组,每两个相邻的数之间的差值不是1就是-1.现在给定一个数,要求查找这个数在数组中的位置。
#include <iostream>using namespace std;#include <cstdio>#include <cstdlib>int s[100];int main(){ int n,key; while(scanf("%d",&n) != EOF){ for(int i = 0;i < n;i++){ scanf("%d",&s[i]); } scanf("%d",&key); int curr = 0; bool tag = false; if(s[curr] == key){ printf("%d\n",curr); continue; } int gap = abs(key - s[0]); while(curr < n){ if(s[curr+gap] == key){ printf("%d\n",curr+gap); tag = true; break; }else{ curr = curr + gap; gap = abs(key - s[curr]); /* 由于相邻间隔只有1或者-1,那么在(curr,curr+gap)中不会出现key */ } } if(tag == false){ printf("未找到"); } } system("pause");}
0 0
- 数组相邻间隔1进行查找
- 相邻元素绝对值为1的数组查找
- [百度]数组A中任意两个相邻元素大小相差1,在其中查找某个数。
- 数组A中任意两个相邻元素大小相差1,在其中查找某个数。
- 9.11排序与查找(二)——对字符串数组进行排序,将所有的变位词排在相邻的位置
- 程序员面试金典: 9.11 排序与查找 11.1编写一个方法,对字符串数组进行排序,将所有变位词排在相邻的位置。
- 在相邻元素相差1的数组中查找某一特定元素第一次出现的位置(非遍历)
- 在相邻元素相差1的数组中查找某一特定元素第一次出现的位置(非遍历)
- 在相邻元素相差1的数组中查找某一特定元素第一次出现的位置(非遍历)
- [经典面试题][百度]数组A中任意两个相邻元素大小相差1,在其中查找某个数。
- 查找——相邻元素差的绝对值都是1的数组当中的某个数,百度笔试题
- 如何在一个相邻元素差的绝对都是1的数组中快速查找一个数?
- adjacent_find 查找相邻元素
- 查找——相邻元素差的绝对值都是1的数组当中的某个数的索引——多益网络2018校招编程1
- 查找相邻元素是否相等
- 对字符串数组进行排序,将所有变位词排在相邻的位置。
- 对字符串数组进行排序,将变位词排在相邻位置
- 数组A中任意两个相邻元素大小相差1
- “#if 0/#if 1 ... #endif”的作用
- 文本提取
- 绑定MAC地址-防止ARP攻击
- map相关操作
- 俗话说众口难调
- 数组相邻间隔1进行查找
- XDOJ1205 - Binary Numbers
- Ubuntu下SSH设置
- NYOJ-三角形面积
- javascript--String 对象常用方法
- owasp conference video and ppt
- linux进程调度
- 【开源Libevent篇章二】定时器的运用
- JavaScript --Array 对象常用方法