• leetcode — search-insert-position


    /**
     * Source : https://oj.leetcode.com/problems/search-insert-position/
     *
     * Created by lverpeng on 2017/7/14.
     *
     * 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
     *
     */
    public class SearchInsertPosition {
    
    
        /**
         * 二分查找
         *
         * @param num
         * @param target
         * @return
         */
        public int binarySearch (int[] num, int target) {
            int left = 0;
            int right = num.length - 1;
            int mid = 0;
            while (left <= right) {
                mid = (left + right) / 2;
                if (num[mid] == target) {
                    return mid;
                }
                if (target > num[mid]) {
                    left = mid + 1;
                } else {
                    right = mid - 1;
                }
            }
    
            return left;
    
        }
    
    
        public static void main(String[] args) {
            SearchInsertPosition searchInsertPosition = new SearchInsertPosition();
            int[] arr = new int[]{1,3,5,6};
            System.out.println(searchInsertPosition.binarySearch(arr, 5));
    
            System.out.println(searchInsertPosition.binarySearch(arr, 2));
            System.out.println(searchInsertPosition.binarySearch(arr, 7));
            System.out.println(searchInsertPosition.binarySearch(arr, 0));
        }
    
    }
    
  • 相关阅读:
    java异常
    Swfmill概述
    AS3中e4x用法纲要
    抽象工厂模式(Abstract Factory)
    动态绑定、抽象类、接口
    Form中Trigger的执行顺序
    Form 中FND_Message的用法总结
    Form属性、内置子程序、触发器、系统变量
    Oracle EBS R12 XML数据表格的Excel脚本报表 PLUS :问题杂烩
    Oralce EBS Alert
  • 原文地址:https://www.cnblogs.com/sunshine-2015/p/7455774.html
Copyright © 2020-2023  润新知