Python | Comprobar la lista ordenada descendente

La operación ordenada de la lista es una operación esencial en muchas aplicaciones. Pero toma lo mejor de la complejidad del tiempo O (nlogn), por lo tanto, uno espera evitar esto. Por lo tanto, para verificar si esto es necesario o no, sabiendo si la lista está ordenada inversamente por defecto o no, uno puede verificar si la lista está ordenada o no. Discutamos varias formas en que esto se puede lograr.

Método n.º 1: método ingenuo
La forma más sencilla de verificar esto es ejecutar un bucle para el primer elemento y verificar si podemos encontrar algún elemento más grande después de ese elemento; en caso afirmativo, la lista no se ordena a la inversa.

# Python3 code to demonstrate 
# Check for Descending Sorted List
# using naive method 
  
# initializing list
test_list = [10, 8, 4, 3, 1]
  
# printing original list 
print ("Original list : " + str(test_list))
  
# using naive method to 
# Check for Descending Sorted List
flag = 0
i = 1
while i < len(test_list):
    if(test_list[i] > test_list[i - 1]):
        flag = 1
    i += 1
      
# printing result
if (not flag) :
    print ("Yes, List is reverse sorted.")
else :
    print ("No, List is not reverse sorted.")
Producción :

Original list : [10, 8, 4, 3, 1]
Yes, List is reverse sorted.

Método n.º 2: usar sort()+ revertir
La nueva lista se puede hacer como una copia de la lista original, ordenar la nueva lista y compararla con la lista anterior nos dará el resultado si se requirió ordenar para obtener una lista ordenada inversa o no.

# Python3 code to demonstrate 
# Check for Descending Sorted List
# using sort() + reverse
  
# initializing list
test_list = [10, 5, 4, 3, 1]
  
# printing original list 
print ("Original list : " + str(test_list))
  
# using sort() + reverse to 
# Check for Descending Sorted List
flag = 0
test_list1 = test_list[:]
test_list1.sort(reverse = True)
if (test_list1 == test_list):
    flag = 1
      
# printing result
if (flag) :
    print ("Yes, List is reverse sorted.")
else :
    print ("No, List is not reverse sorted.")
Producción :

Original list : [10, 8, 4, 3, 1]
Yes, List is reverse sorted.

Publicación traducida automáticamente

Artículo escrito por manjeet_04 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *