zoukankan      html  css  js  c++  java
  • Leetcode_35【搜索插入位置】

    文章目录

    • 题目
    • 脚本一
    • 脚本一逻辑

    题目:

    给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。

    你可以假设数组中无重复元素。

    示例 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


    脚本一:【用时:60ms】

    class Solution:
        def searchInsert(self, nums: List[int], target: int) -> int:
            if target in nums:
                return(nums.index(target))
            for i,j in enumerate(nums):
                if j > target:
                    return(i)
            else:
                return(i+1)

    脚本一逻辑:

    • 第一:判断目标数字是否在列表中,若在则直接返回目标数字在列表中的索引值
    • 第二:若目标数字不在列表中,则遍历列表,找到列表中第一个比目标数字大的元素值,并返回其索引值;若没有在列表中找到比目标数字大的元素,则返回列表元素个数加一

    脚本二:【用时:50ms】【转载】

    class Solution:
        def searchInsert(self, nums: List[int], target: int) -> int:
            if target in nums:
                return(nums.index(target))
            nums.insert(0,target)
            nums.sort()
            return(nums.index(target))

    脚本二逻辑:

    • 此脚本处理也是相当巧妙
    • 当目标数字不在列表中时,通过向列表添加目标数字,然后进行排序,最后通过列表的index方法获取目标数字在列表中的位置
  • 相关阅读:
    Windows API—CreateEvent—创建事件
    C++的注册和回调
    Python内置模块-logging
    使用 C++ 处理 JSON 数据交换格式
    Python生成器
    5.Spring-Boot缓存数据之Redis
    6.Spring-Boot项目发布到独立的tomcat中
    7.Spring-Boot自定义Banner
    8.Spring-Boot之SpringJdbcTemplate整合Freemarker
    9.Spring-Boot之Mybatis-LogBack-Freemarker
  • 原文地址:https://www.cnblogs.com/mailong/p/12057658.html
Copyright © 2011-2022 走看看