在数组中查找元素,以使元素在Python中形成严格减少和增加的序列

假设我们有一个正数数组;我们必须检查一个点/项目,直到哪个项目先创建一个严格减少的序列,然后再创建一系列严格增加的整数。这些是以下属性:我们必须记住,序列必须具有最小长度2

另外,我们已经注意了递减序列的最后一个值是递增序列的第一个值。

因此,如果输入类似于{5,4,3,4},则输出将为3,因为{5,4,3}严格减少,而{3,4}严格增加。

为了解决这个问题,我们将遵循以下步骤-

  • 增加:= 1,减少:= 1

  • n:=数组大小

  • 对于1到n范围内的i,执行

    • 返回-1

    • 如果增加等于1,则

    • 如果减少> = 2,则

    • 除此以外,

    • pt:= array [i-1]

    • 增加:=增加+ 1

    • 返回-1

    • 如果增加等于1,则

    • 除此以外,

    • 减少:=减少+ 1

    • 返回-1

    • 如果array [i] <array [i-1],则

    • 否则,当array [i]> array [i-1]为非零时,

    • 否则,当array [i]与array [i-1]相同时,则

    • 如果增加> = 2而减少> = 2,则

      • 返回pt

    • 除此以外,

      • 返回-1

    示例

    让我们看下面的实现以更好地理解-

    def search_element(array):

       increase = 1

       decrease = 1

       n = len(array)

       for i in range(1, n):

          if(array[i] < array[i-1]):

             if increase == 1:

                decrease = decrease + 1

             else:

                return -1

          elif(array[i] > array[i-1]):

             if increase == 1:

                pt = array[i-1]

             if decrease >= 2:

                increase = increase + 1

             else:

                return -1

          elif(array[i] == array[i-1]):

             return -1

       if(increase >= 2 and decrease >= 2):

          return pt

       else:

          return -1

    array = [5,4,3,4]

    element = search_element(array)

    print(element)

    输入项

    [5,4,3,4]

    输出结果

    3

    以上是 在数组中查找元素,以使元素在Python中形成严格减少和增加的序列 的全部内容, 来源链接: utcz.com/z/327186.html

    回到顶部