登录
首页 >  数据库 >  MySQL

BIGO 测开

来源:SegmentFault

时间:2023-01-10 11:45:48 413浏览 收藏

对于一个数据库开发者来说,牢固扎实的基础是十分重要的,golang学习网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《BIGO 测开》,主要介绍了MySQL、python,希望对大家的知识积累有所帮助,快点收藏起来吧,否则需要时就找不到了!

题目要求:
给定一个有序(非降序)数组A,可含有重复元素。找到大于target(目标值)的最小元素位置,目标不存在则返回-1

不考虑算法复杂度实现:

nums = list(map(int,input().split()))
target = int(input())
def searchRange(nums,target):
    n = len(nums)
    for i in range(len(num)):
        if nums[i]>target:
            return i 
        else:
            return -1
            
print(searchRange(nums,target))

优化(二分查找)

nums = list(map(int,input().split()))
target = int(input())
def searchRange(nums,target):
    n = len(nums)
    if n>=1:
        v = n//2
        if nums[v] == target :
            return v
        elif targetnums[v]:
            return searchRange(nums[v+1:],target)
    return -1

print(searchRange(nums,target))

二分查找最优时间复杂度O(1),最坏时间复杂度O(N)

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于数据库的相关知识,也可关注golang学习网公众号。

声明:本文转载于:SegmentFault 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表