selección ordenar python

Funciones y métodos de Python

Un orden de selección de Python divide una lista en dos listas pequeñas. Una lista representa los elementos ordenados. La otra lista contiene los elementos sin clasificar. La clasificación por selección encuentra los valores más pequeños o más altos en cada iteración y mueve esos valores a la lista ordenada.

La clasificación de listas es una operación común en una variedad de programas.

Considere este ejemplo: un maestro quiere aprender más sobre qué tan bien les fue a sus estudiantes en su prueba más reciente. Un profesor puede querer ordenar a los estudiantes y rsquo; puntuaciones en orden ascendente y descendente. Esto les permitirá descubrir fácilmente cuáles fueron los puntajes más altos y más bajos de las pruebas.

Ingrese, el orden de selección. El ordenamiento por selección es un algoritmo que puede utilizar para ordenar una lista en orden ascendente o descendente.

En esta guía, vamos a discutir cómo escribir un programa de ordenamiento por selección en Python. Veremos un ejemplo a lo largo de esta guía para que pueda aprender los entresijos de los tipos de selección.




¿Qué es un orden de selección de Python?

Un orden de selección de Python busca repetidamente el elemento mínimo en una lista y mueve ese elemento a un final particular de la lista. La clasificación continúa hasta que la matriz se ordena en orden. También puede dar instrucciones a una clasificación de selección para encontrar el elemento máximo. Ambos enfoques ordenan una lista.

Los tipos de selección asumen que el primer elemento de una lista es el valor más pequeño. Luego, la clasificación comparará ese valor con el segundo elemento. Si el segundo elemento es menor que el valor mínimo, el segundo elemento se convierte en el valor mínimo.

Este proceso se repite hasta que se alcanza el último elemento de la lista. Una vez que se alcanza este elemento, el valor mínimo se coloca al comienzo de la lista sin clasificar.

El 81% de los participantes afirmó que se sentía más seguro acerca de sus perspectivas de trabajo técnico después de asistir a un campamento de entrenamiento. Asigne a un bootcamp hoy mismo.

El graduado promedio de un bootcamp pasó menos de seis meses en la transición profesional, desde comenzar un bootcamp hasta encontrar su primer trabajo.

No hay mejor manera de hacerlo. aprender sobre los tipos de selección que ejecutar un ejemplo. Repasemos y clasifiquemos una lista de calificaciones de los estudiantes en orden ascendente. Considere esta lista sin clasificar:


73 62 61 69

Empezaremos llamando al primer valor de nuestra lista el mínimo . Cada iteración del orden de selección encontrará el elemento más pequeño y lo moverá al subarreglo ordenado.

Ordenar el elemento mínimo es una opción. Un orden de selección funciona si clasifica el elemento máximo. Pero, nosotros & rsquo; Estamos usando el elemento mínimo en este ejemplo.

A continuación, compararemos el valor mínimo con el segundo elemento. Si este elemento es menor que el mínimo, el segundo elemento debería convertirse en el valor mínimo.

Vamos a comparar 73 y 62. 73 es mayor que 62, lo que significa que nuestro nuevo valor mínimo es 62. Nuestra lista pasará por todos los demás números de nuestra lista:

  • 61 es mayor que 6 2 (nuestro valor mínimo)? No, intercambie los números. El mínimo se convierte en 61.
  • ¿Es 69 mayor que 61 (nuestro valor mínimo)? Sí, así que no hagas nada. Estancias mínimas en 61.

Nuestra lista se ve igual:

73 62 61 69

Cuando llegue al final de la lista, puede mover el mínimo al principio de la lista:

61 (nuestro valor mínimo) se ha movido al principio de la lista, y todos los demás valores se han movido hacia arriba en uno. Repetiremos este proceso hasta que todos los elementos estén ordenados.

Cada iteración de nuestra lista devolverá lo siguiente:

  1. 73, 62, 61, 69
  2. 61, 73, 62, 69
  3. 61, 62, 73, 69
  4. 61, 62, 69, 73

Cuando el ordenamiento por selección ha marcado todos los elementos de la lista, el ordenamiento se detendrá.

El subarreglo ordenado y el subarreglo que no está ordenado son ambos invisibles para nosotros. Nuestro algoritmo ordena una matriz por nosotros y realiza un seguimiento de la parte no ordenada de la matriz.




Cómo realizar una ordenación de selección en Python

Ahora estás familiarizado con la teoría: bueno ¡hecho! Es el momento del gran desafío. Vamos a implementar el algoritmo de ordenación por selección en Python. Vamos a escribir un programa que tome una matriz de Python y la ordene en orden ascendente.


Definir una función de clasificación

Comenzaremos definiendo una función de Python que realiza nuestra clasificación de selección :

 def sortList (matriz): longitud = len (matriz) para el elemento en rango (longitud): mínimo = elemento para i en rango (elemento + 1, longitud): si matriz [i] & lt; matriz [mínimo]: mínimo = i (matriz [elemento], matriz [mínimo]) = (matriz [mínimo], matriz [elemento ]) 

Empezamos utilizando el método Python len () para obtener la longitud de nuestra lista. luego use esto para iniciar un Python for loop que recorre cada elemento de nuestra lista.

Para cada iteración en el ciclo, establecemos el valor de mínimo para que sea el primer elemento de nuestra lista. Hicimos esto en nuestro tutorial anterior. Una vez que & rsquo; Después de haber establecido un valor mínimo, comienza otro ciclo for que pasa por cada elemento de nuestra lista.

Para cada elemento de la lista, nuestro algoritmo comprueba si el valor mínimo es mayor que ese artículo. Si es así, no pasa nada; de lo contrario, el valor mínimo se convierte en el elemento que está leyendo el programa.

Al recorrer cada elemento de nuestra lista, nuestro algoritmo mueve el valor mínimo al principio de la lista. Luego, nuestro programa continuará hasta que termine el ciclo superior for . Esto se debe a que los ordenamientos de selección se ejecutan un número de veces igual a la longitud de una lista.

Llame a la función de ordenamiento

Es posible que haya notado que si ejecutamos nuestro programa, no pasa nada. Esto se debe a que aún no le hemos dicho a nuestro código qué valores usar. Agrega el siguiente código al final de tu programa, fuera de la función sortList:

"Career Karma entró en mi vida cuando más lo necesitaba y rápidamente me ayudó a emparejarme con un bootcamp. Dos meses después de graduarme, encontré ¡el trabajo de mis sueños que se alineaba con mis valores y metas en la vida! "

Venus, ingeniero de software en Rockbot

Cuando ejecutamos nuestro programa , se devuelve lo siguiente:

 [61, 62, 69, 73] 

Nuestra lista ha sido ordenada. Date una plamadita en la espalda; ¡Lo hiciste!

Los tipos de selección se pueden usar para ordenar una lista en orden descendente. Si desea ordenar una lista de esta manera, puede cambiar el & ldquo; si & rdquo; instrucción en la selección ordenada de la siguiente manera:

 if array [i] & gt; array [mínimo]: 

Hemos cambiado el signo menor que por un signo mayor que. Esto ordenará nuestra lista en orden descendente, porque el valor mínimo se establecerá en el valor más alto de la lista. Técnicamente, nuestro valor mínimo se convierte en un valor máximo .





¿Cuándo debería utilizar un orden de selección?

Los tipos de selección, como los de burbujas, se utilizan mejor para listas más pequeñas. Esto se debe a que el algoritmo no es & rsquo; Es tan eficiente como otros, como una ordenación por inserción cuando se usa en listas más grandes.

Una ordenación por selección es una excelente manera de aprender cuando recién está comenzando con algoritmos de ordenación. Otros tipos pueden ser difíciles de dominar, pero tener una comprensión clara de los tipos de selección puede ayudarlo a comprender los diferentes tipos de listas.




¿Cuál es la complejidad del tipo de selección?

El tipo de selección tiene una complejidad temporal de O ( n2). Esto significa que la complejidad del algoritmo crecerá exponencialmente dependiendo de cuántos elementos haya en la lista.

O (n2) es la complejidad del peor de los casos, el promedio y el mejor de los casos para este algoritmo. Si quieres aprender más e sobre la clasificación de complejidades, consulte nuestra guía de notación Big O .




Conclusión

Selección los ordenamientos son un método importante para ordenar los datos. Los ordenamientos de selección leen todos los elementos de una lista y, en cada iteración, mueven el elemento más pequeño al principio de la lista. Esto sucede hasta que se hayan leído todos los elementos de la lista.

Los tipos de selección no se usan mucho fuera de la enseñanza porque hay algoritmos más eficientes para usar. Dicho esto, son un buen trampolín para aprender otros tipos, como una inserción o combinación.

¿Está interesado en aprender más sobre Python? Lea nuestra guía Cómo aprender Python completa para obtener consejos de expertos que lo ayudarán a avanzar en sus conocimientos.





selección ordenar python: StackOverflow Questions

Tutorials