[C语言][LeetCode][34]Search for a Range
来源:互联网 发布:想在淘宝直播 编辑:程序博客网 时间:2024/04/30 02:19
题目
Search for a Range
Given a sorted array of integers, find the starting and ending position of a given target value.
Your algorithm’s runtime complexity must be in the order of O(log n).
If the target is not found in the array, return [-1, -1].
For example,
Given [5, 7, 7, 8, 8, 10] and target value 8,
return [3, 4].
标签
Array、Binary Search
难度
适中
分析
题目意思是给定一个排好序的整型数组和一个整型,然后找到这个整型在这个数组的起始位置和结束位置,并返回对应的下标,如果没有找到,返回[-1,-1]。这里的做法是,从数组开头查找起始位置,从数组末尾查找结束位置。
C代码实现
/** * Return an array of size *returnSize. * Note: The returned array must be malloced, assume caller calls free(). */int* searchRange(int* nums, int numsSize, int target, int* returnSize) { int i=0; int start=0, end=0; bool startFlag = false; bool endFlag = false; int * array = (int *)malloc(sizeof(int)*2); for(i=0; i<numsSize; i++) { if(target == nums[i]) { start = i; startFlag = true; break; } } for(i=numsSize-1; i>=0; i--) { if(target == nums[i]) { end = i; endFlag = true; break; } } *returnSize = 2; if((true ==startFlag) && (true ==endFlag)) { array[0] = start; array[1] = end; } else { array[0] = -1; array[1] = -1; } return array;}
0 0
- LeetCode c语言-Search for a Range
- [C语言][LeetCode][34]Search for a Range
- [leetcode-34]Search for a Range(C)
- LeetCode 34 Search for a Range (C,C++,Java,Python)
- [C++]LeetCode: 65 Search for a Range
- 【C++】【LeetCode】34. Search for a Range
- LeetCode(34)Search for a Range
- [LeetCode] Search for a Range [34]
- LeetCode 34 Search for a Range
- [leetcode 34] Search for a Range
- Leetcode NO.34 Search for a Range
- [LeetCode 34]Search for a Range
- leetcode-34 Search for a Range
- Leetcode 34 Search for a Range
- Search for a Range - LeetCode 34
- leetcode 34 -- Search for a Range
- leetcode 34: Search for a Range
- Leetcode#34 Search for a Range
- 欢迎使用CSDN-markdown编辑器
- android菜鸟进阶之路——发送短信与接收短信
- KMP算法
- 华为机试:计算两个字符串的最大公共字串的长度,字符不区分大小写
- IOS square类集成rectangl类 计算面积和周长
- [C语言][LeetCode][34]Search for a Range
- [HDU 1864 最大报销额] 入门DP
- 判断当前时间的下一秒是多少
- WebSphere MQ 对象单向复制要求
- 高效素数打表
- CSS
- C/C++程序员必须熟练应用的开源项目
- wait、sleep、notify、notifyAll的区别
- [HDU 1231 最大连续子序列]