【leetcode】P35SearchInsertPosition

琉璃世界ol發表於2020-11-02
//給定一個排序陣列和一個目標值,在陣列中找到目標值,並返回其索引。如果目標值不存在於陣列中,返回它將會被按順序插入的位置。 
//
// 你可以假設陣列中無重複元素。 
//
// 示例 1: 
//
// 輸入: [1,3,5,6], 5
//輸出: 2
// 
//
// 示例 2: 
//
// 輸入: [1,3,5,6], 2
//輸出: 1
// 
//
// 示例 3: 
//
// 輸入: [1,3,5,6], 7
//輸出: 4
// 
//
// 示例 4: 
//
// 輸入: [1,3,5,6], 0
//輸出: 0
// 
// Related Topics 陣列 二分查詢 
// ? 724 ? 0

package leetcode.editor.cn;

//Java:搜尋插入位置
public class P35SearchInsertPosition {
    public static void main(String[] args) {
        Solution solution = new P35SearchInsertPosition().new Solution();
        // TO TEST
        int i = solution.searchInsert(new int[]{1, 3, 5, 6}, 2);
        System.out.println(i);
    }

    //leetcode submit region begin(Prohibit modification and deletion)
    class Solution {
        public int searchInsert(int[] nums, int target) {
            int l = 0;
            int r = nums.length - 1;
            while (l <= r) {
                int mid = l + (r - l) / 2;
                if (nums[mid] == target)
                    return mid;
                else if (nums[mid] > target)
                    r = mid - 1;
                else l = mid + 1;
            }
            return l ;
        }
    }
//leetcode submit region end(Prohibit modification and deletion)

}


相關文章