¿Cómo escribir un algoritmo (no uno nuevo)?

Supongo que por “escribir” te refieres a “implementar” o “código”.

  1. Asegúrese de comprender bien el algoritmo.
  2. Divídalo en las piezas más pequeñas posibles, donde a) esté seguro de lo que debe hacerse exactamente, yb) esté seguro de que no se equivocará.
  3. Codifica esas piezas.
  4. Si lo anterior no funcionó, pruebe manualmente esas piezas de forma independiente.
  5. Si lo anterior no funcionó, divídalo en piezas aún más pequeñas y repita.
  6. Pruebe el algoritmo, incluyendo el rendimiento y los casos de esquina.

Utilice las salidas de depuración y afirmar () – s ampliamente hasta que la solución perfecta esté allí.
(Y, tal vez, mantenga esos en el código, deshabilitados o comentados).

Ejemplo: implementación de ordenación rápida.

  • Posible desglose: partición, fusión, enfoque recursivo.
  • La partición se puede probar de forma independiente: las dos partes fusionadas deberían resultar en la original.
  • La fusión se puede probar de forma independiente: las dos partes clasificadas deben convertirse en una parte clasificada.
  • El enfoque recursivo se puede probar de forma independiente imprimiendo los índices y valores de subconjuntos de datos de entrada en cada paso.

¡Todo lo mejor!
Dima