算法题:求一个数在数组中出现的位置
来源:互联网 发布:硬笔软件app 编辑:程序博客网 时间:2024/05/17 23:53
//有一个int型数组,每两个相邻的数之间的差值不是1就是 //- 1.现在给定一个数,要求查找这个数在数组中的位置。#include <iostream>using namespace std;void Grial(int a[], int n, int val){ //我的思路是从第一个数开始,如果这个数是2, //而我要找的数是5,那么最好我也必须向后面 //跳5-2=3个位置,因为每个数字只相差1或者-1. int i = 0; int *b = new int[n];//如果全部是val,则需要n空间。 int k = 0; for (; i < n;) { if (a[i] == val) { b[k++] = i; i++; } else { int len = a[i]>val ? a[i] - val : val - a[i]; i += len; } } cout << val << "出现的下标位置有:"; for (i=0; i < k; i++) { cout << b[i] << " "; } cout << endl;}int main(){ int a[] = {2,3,4,5,6,7,6,5,4,3,2,1,2,3,4,5}; Grial(a, sizeof(a) / sizeof(int),5); return 0;}
1 0
- 算法题:求一个数在数组中出现的位置
- 在一个排序数组中求一个数K出现的次数
- 递归算法求某一数在数组中出现的次数
- 求一个数组中只出现一次的两个数
- 求一个数组中出现次数最多的数
- 求一个数组中出现次数最多的数
- 【算法习作】已知有一个数字在某数组中出现次数超过一半,求这个数
- 求一个整型数组中,只有一个数出现一次,其他的数都出现2次,求这个数?
- 求某个数在数组中出现的次数超过数组的一半
- 在一个存十个数的数组中 用户输入一个数 查找出该数所在的位置
- 求数组中第k大的数的位置
- 求一个数组中出现次数只有一次的数次
- C语言:求一个数组中只出现一次的两个数
- 经典算法_求数组中出现1次的数
- 数据结构与算法[LeetCode]—数组中出现次数异与其他数的一个数
- 查找有序数组中某个数首次出现的位置
- 在排序的数组中二分查找一个元素,返回在数组中它第一次出现的位置
- 【C语言】在两个数成对出现的数组中找到一个单独的数。
- 每个程序员和设计师必做的10项运动
- 5种很牛的两位数乘法速算方法
- 2015 Multi-University Training Contest 3(HDOJ5316、5317、5319、5326)
- 黑马程序员——字符串常见操作
- Request processing failed; nested exception is java.lang.NullPointerException
- 算法题:求一个数在数组中出现的位置
- connect() to unix:/var/run/php5-fpm.sock failed (11: Resource temporarily unavailable) while connect
- 6款值得推荐的Android开发框架
- java中的接口
- OC 2 10 16 进制相互转换
- 设计模式(代理模式--静态代理)
- 从ubuntu14.10 升级到ubuntu15.04没有声音
- 如何阅读深入理解计算机系统
- MyBtais错误:org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.a