下一个更大元素的有趣Python实现

在本文中,我们将学习定义和用户定义的函数以预测下一个最大的元素。

问题陈述

我们得到了一个数组,我们需要为数组中存在的每个元素打印Next Greater Element。任意元素y的下一个更大元素是数组x中右侧出现的第一个最大元素。没有最大元素的元素,将返回-1作为输出。4

输入测试用例

[12,1,2,3]

输出结果

12 -> -1
1 -> 3
2 -> 3
3 -> -1

现在,让我们观察一下源代码。

示例

# Function
Def elevalue(arr):
   # Iteration
   for i in range(0, len(arr)):
      # slicing max
      final = max(arr[i:])
   # greatest check
   if (arr[i] == final):
      print("% d -> % d" % (arr[i], -1))
   else:
      print("% d -> % d" % (arr[i], final))
# Driver program
def main():
   arr = [12,1,2,3]
   elevalue(arr)
   arr = [1,34,2,1]
   elevalue(arr)
if __name__ == '__main__':
      main()

输出结果

12 -> -1
1 -> 3
2 -> 3
3 -> -1
1 -> 34
34 -> -1
2 -> -1
1 -> -1

结论

在本文中,我们通过使用用户定义的函数了解了用于下一个更大元素的有趣的python实现。