Leetcode 35 Search Insert Position
来源:互联网 发布:mysql 查看用户连接数 编辑:程序博客网 时间:2024/06/06 15:35
Given a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order.
You may assume no duplicates in the array.
Here are few examples.[1,3,5,6]
, 5 → 2[1,3,5,6]
, 2 → 1[1,3,5,6]
, 7 → 4[1,3,5,6]
, 0 → 0
O(n)的做法
public class Solution { public int searchInsert(int[] nums, int target) { if(nums.length == 0){ return 0; } for(int i = 0;i<nums.length;i++){ if(target>nums[i]) continue; if(target == nums[i]) return i; if(target < nums[i]) return i; } return nums.length ; }}
但是,这种问题就应该想到二分法(Binary Search),log是个好东西,比n的效果要好很多。
二分法有一个值得注意的地方,就是overflow的问题。
public int searchInsert(int[] A, int target) { int low = 0, high = A.length-1; while(low<=high){ int mid = low +(high - low)/2;//注意这的写法 if(A[mid] == target) return mid; else if(A[mid] > target) high = mid-1; else low = mid+1; } return low; }
0 0
- leetcode 35: Search Insert Position
- Leetcode(35) Search Insert Position
- [leetcode 35] Search Insert Position
- [Leetcode] 35 - Search Insert Position
- LeetCode 35 Search Insert Position
- leetcode-35 Search Insert Position
- LeetCode 35 Search Insert Position
- Leetcode 35 Search Insert Position
- Leetcode[35]-Search Insert Position
- LeetCode 35:Search Insert Position
- leetcode-35-Search Insert Position
- leetcode 35 -- Search Insert Position
- leetcode[35]:Search Insert Position
- leetcode 35: Search Insert Position
- Leetcode#35 Search Insert Position
- LeetCode(35) Search Insert Position
- LeetCode 35: Search Insert Position
- Leetcode#35||Search Insert Position
- 基于QT的TCP协议实现的通信小程序
- bootstrap-table插件实现ajax服务端分页显示
- BZOJ2229: [Zjoi2011]最小割 分治最小割
- linux环境下wps及WebStorm等软件不能输入中文解决方案
- 1
- Leetcode 35 Search Insert Position
- Java开发中创建一组功能的步骤,也就是创建一个模块的步骤。
- jQuery操作cookie
- 面向对象
- Qt tcp client程序
- 120. Triangle(unsolved)
- Cycript基本语法与使用-iOS逆向工程
- 计算几何基础知识
- 剑指offer_22