我正在尝试解决问题
给出
num2 = num1 + num2;
字词列表,检查元素是否升序, 下降,或者不使用n
都不下降def
个功能。
示例输入:
inbuilt
我可以轻松地使用list1 = [1,2,3,4] # Output -> In list1 elements are arranged in ascending order.
list1 = [4,3,2,1] # Output -> In list1 elements are arranged in descending order.
list1 = [1,3,2,4] # Output -> In list1 the elements are not arranged in any order.
和list1.sort()
我写的是什么...
list1.sort(reverse=True)
有更好的方法吗?
答案 0 :(得分:0)
您可以使用for(条件)之类的循环,并比较第一个元素是否小于下一个元素,依此类推。
这是一个伪代码:
for(conditions)
if(element < next element)
keep going
if not then break and display
that the array is not arranged
注意:这将用于升序,仅通过更改if(condition)
即可实现降序。答案 1 :(得分:0)
这是一个可能的解决方案:
ascending = True
descending = True
prev_index = 0
for index in range(1, len(list1)):
ascending = ascending and list1[index] >= list1[prev_index]
descending = descending and list1[index] <= list1[prev_index]
prev_index = index
if ascending:
print("Elements are arranged in ascending order")
elif descending:
print("Elements are arranged in descending order")
else:
print("Elements are not arranged in any order")
当列表中的所有元素都相等时(例如list1 = [1,1,1]
),升序和降序均为True
:在我的解决方案中,列表被视为升序。