经典的二分法
来源:互联网 发布:2015全国交通事故数据 编辑:程序博客网 时间:2024/06/05 19:34
Find any position of a target number in a sorted array. Return -1 if target does not exist.
Example
Given [1, 2, 2, 4, 5, 5].
For target = 2, return 1 or 2.
For target = 5, return 4 or 5.
For target = 6, return -1.
二分法模板:
start + 1 < end
start + (end - start) / 2
a[mid] == , < , >
a[start], a[end] ? target
public class Solution { /** * @param nums: An integer array sorted in ascending order * @param target: An integer * @return an integer */ public int findPosition(int[] nums, int target) { // Write your code here if (nums == null || nums.length == 0) { return -1; } int start = 0; int end = nums.length - 1; while (start + 1 < end) { int mid = start + (end - start) / 2; if (nums[mid] == target) { return mid; } else if (nums[mid] < target) { start = mid; } else { end = mid; } } if (nums[start] == target) { return start; } if (nums[end] == target) { return end; } return -1; }}
0 0
- 经典的二分法
- C++二分法经典例子
- 二分法经典题目
- 二分法-二分查找的应用及三个经典例题
- 经典面试(1) 二分法与二进制
- php经典算法(二分法、快速排序)
- 二分法:CF371C-Hamburgers(二分法+字符串的处理)
- 二分法的妙用
- 二分法插入的实现
- 二分法的使用
- 二分法查找的实现
- 二分法的心得
- 编程珠玑的二分法
- 二分法的实现
- 二分法的具体应用
- 最简单的二分法
- 二分法的应用
- 二分法查找的原理
- No.001内存空间分几部分:代码段、数据段,栈,堆 (收集整理)
- STM32的ADC1+ADC3 16路采集 DMA传输 数据不错位
- MediaCodec文档翻译
- 那些过分的关心,其实不是关心
- 问题 E: 捡石子(哈夫曼树思想)
- 经典的二分法
- 为什么程序员一定要会用Google和Stack Overflow?
- AIDL实践二:自定义数据类型
- java基本概念-验证码
- Linux中的lo回环接口
- 第65篇 摄像头屏蔽(五)及PHP session变量
- 第十五章 套接字
- H264视频通过RTMP直播 代码 ACC,H264文件
- swift 中 as as! as? 的区别