深信服Python笔试

这里只是编程题部分,前面还有很多算法的考察。

第一题

描述了很复杂,实际上就是回文。看描述把我看蒙了。

def Solution(x):
    #将int转化为str,将str反转后,再转化为int。判断反转前和反转后的int是否相同
    if x >=0 and x == int(str(x)[::-1]):
        return True
    else:
        return False
x=121
Solution(x)

第二题

大概内容:给定一个目标值和数组。如果目标值在数组中,则返回下标,否则返回-1。如果时间复杂度为O(n)不得分。

采用方法,二分查找:

nums=input()
target=input()
def search(nums,target):
    left=0
    right=len(nums)-1
    while(left<=right):
        mid=int((right+left)/2)
        if nums[mid]<target:
            left=mid+1
        elif nums[mid]>target:
            right=mid-1
        elif  nums[mid]==target:
            return mid

    return  -1
    
search(nums,target)

猜你喜欢

转载自blog.csdn.net/weixin_46211269/article/details/126651355