ในบทความนี้ เราจะเรียนรู้เกี่ยวกับการกำหนดและฟังก์ชันที่ผู้ใช้กำหนด (user-defined) เพื่อทำนายองค์ประกอบที่มากกว่าถัดไป
ข้อความของปัญหา
เราได้รับอาร์เรย์ และเราต้องพิมพ์ Next Greater Element สำหรับทุกองค์ประกอบที่มีอยู่ในอาร์เรย์ Next Greater Element สำหรับองค์ประกอบทั่วไป y คือองค์ประกอบที่มากที่สุดตัวแรกที่อยู่ด้านขวาของ x ในอาร์เรย์ องค์ประกอบที่ไม่มีองค์ประกอบมากกว่า ให้คืนค่า -1
Test case อินพุต
[12, 1, 2, 3]
ผลลัพธ์
12 -> -1 1 -> 3 2 -> 3 3 -> -1
ตอนนี้มาสังเกตโค้ดต้นฉบับ
ตัวอย่าง
# Function Definition
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 ไปใช้งานอย่างน่าสนใจสำหรับ Next Greater Elements โดยใช้ฟังก์ชันที่ผู้ใช้กำหนด