Red de conocimiento informático - Aprendizaje de código fuente - Estructura de datos, un algoritmo común, respuesta a continuación.

Estructura de datos, un algoritmo común, respuesta a continuación.

Supongamos que se almacenan n números enteros en a[0]~a[n-1]

1) i=0, j=n-1

2 ) Bajo la premisa de no cruzar el límite, encuentro el primer número par a[i] desde el actual hacia atrás

3) Si he cruzado el límite, vaya al paso 8)

4 ) Sin cruzar el límite, j encuentra el primer número impar a[j] desde la posición actual

5) Si j ha cruzado el límite, vaya al paso 8)

6 ) Si ilt; j, entonces intercambie a[i] y a[j], entonces i, j--

7) Si ilt; j, vaya al paso 2)

8) Fin del algoritmo

La complejidad temporal de este algoritmo es O(n), la complejidad espacial es O(n), la unidad de almacenamiento temporal es O(1) y hay tres unidades. : i, j y One para intercambio.