Python教程

python搜索插入位置

本文主要是介绍python搜索插入位置,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

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

请必须使用时间复杂度为 O(log n) 的算法。

nums = [1,3,5,6]
target = 5

#方法一目标库在列表里:
position=nums.index(target)
nums[position]=target
print(position)
print(nums)

#方法二目标库不在列表里:
nums.append(target)
nums.sort()
position=nums.index(target)
print(position)

#方法三
nums=sorted(nums)
for i in range(1,len(nums)):
    if nums[i]==target:
        print(i)
    elif i<target:
        print(i)
    elif i>target:
        print(len(nums)+1)
#方法四 二分法
nums_len=len(nums)
left=0
right=nums_len-1
while left<right:
    mid=(left+right)//2
    if nums[mid] < target:
        print(mid+1)
    elif nums[mid]> target:
        print(mid-1)
    else:
        print(mid)

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/search-insert-position
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

这篇关于python搜索插入位置的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!