我用JS刷LeetCode | Day 10 | Search Insert Position

我用JS刷LeetCode | Day 10 | Search Insert Positionjavascript

搜索插入位置:

說明:現階段的解題暫未考慮複雜度問題

首發地址:http://www.brandhuang.com/article/1584366828427前端

Question:

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.java

You may assume no duplicates in the array.算法

中文題目:

給定一個排序數組和一個目標值,在數組中找到目標值,並返回其索引。若是目標值不存在於數組中,返回它將會被按順序插入的位置。數組

你能夠假設數組中無重複元素。微信

Example:數據結構

Input: [1,3,5,6], 5
Output: 2

Input: [1,3,5,6], 2
Output: 1

Input: [1,3,5,6], 7
Output: 4

Input: [1,3,5,6], 0
Output: 0

我的分析:

  1. 讀完題目咱們能夠獲得的信息:「排序數組」,返回目標值在數組中的索引數組中元素不重複
  2. 咱們只須要 遍歷數組,將每一個元素和目標值相比,當數組中元素第一次大於或者等於目標值時,說明目標值在數組中的位置就是該元素如今的位置.
  3. 因而獲得答案。

Answer:

var searchInsert = function(nums, target) {
    for (var i = 0; i < nums.length; i++) {
       if (nums[i] >= target) {
           return i
       }
    }
    return nums.length
};

說明

發現最近的題開始須要有一點數據結構的知識了,因此刷題的速度會放慢,須要去補充下數據結構的知識。spa

以前在博客發了兩篇,能夠看看:code

JavaScript版數據結構與算法——基礎篇(一)排序

JavaScript版數據結構與算法——基礎篇(二)

其餘:

本題更多 JavaScript 解析,點擊連接訪問對應的答案:https://leetcode.com

若有興趣掃碼或微信搜索「九零後重慶崽兒」,咱們一塊兒學前端。

brand.jpg

相關文章
相關標籤/搜索