zoukankan      html  css  js  c++  java
  • jQuery火箭图标返回顶部代码

    题目
    给出一个有序数列随机旋转之后的数列,如原有序数列为:[0,1,2,4,5,6,7] ,旋转之后为[4,5,6,7,0,1,2]。
    假定数列中无重复元素,且数列长度为奇数。
    求出旋转数列的中间值。如数列[4,5,6,7,0,1,2]的中间值为4。
    输入

    4,5,6,7,0,1,2

    输出

    4

    输入样例
    1
    1,2,3
    4,5,6,7,0,1,2
    12,13,14,5,6,7,8,9,10
    输出样例
    1
    2
    4
    9

    方法1 排序后直接取。

    def solution(line):
        #line = "4,5,0,1,2"
        array = list(line.split(",")).sort()
        return array[len(array)/2]

    方法2 不排序,找出旋转的点直接取到中间值。

    def solution(line):
        # 缩进请使用 4 个空格,遵循 PEP8 规范
        array = list(line.split(","))
        head = int(array[0])
        array_len = len(array)
        for i in range(array_len):
            if int(array[i]) < head:
                break
        if i == array_len - 1:
            return(array[array_len/2])
        else:
            if i <= array_len/2:
                return(array[array_len/2+i])
            else:
                return(array[i-array_len/2-1])

    参考:

    https://blog.csdn.net/weixin_39789689/article/details/82291870

  • 相关阅读:
    不使用C++ 11的整数转字符串
    1090 危险品装箱(25 分)
    C++中vector,set,map自定义排序
    D
    7-2 幼儿园数学题(29 分)
    李白打酒
    C++ string和int相互转换
    1049 数列的片段和(20)(20 分)
    11. 盛最多水的容器
    7. 整数反转
  • 原文地址:https://www.cnblogs.com/v5captain/p/9960355.html
Copyright © 2011-2022 走看看