¿Dónde puedo encontrar ayuda en línea si tengo problemas con una pregunta algorítmica?

Puede publicar sus preguntas algorítmicas relacionadas en “algogeeks”. Un grupo de discusión de grupos de Google dedicado a discutir algoritmos.

Antes de eso, asegúrese de buscar en Google lo suficiente sobre su excepción o error que encuentre. En stackoverflow, hay un foro / página separado para hacer preguntas relacionadas con algoritmos. Antes de publicar su pregunta, elabore el enunciado del problema, su enfoque de la solución y el código de muestra, si corresponde.

No esperes ninguna solución de trabajo en ningún lenguaje de programación aunque puedas obtener muchos. Comprender y resolverlo.

Siempre haga preguntas como “¿Cómo abordar este problema?” O “¿Cuál sería el tiempo de ejecución?” Escriba la pregunta e intente resolverla por su cuenta.

También puede buscar en foros como “www.geeksforgeeks.com” para muchos problemas estándar.

Y hay muchos más foros para discutir sobre problemas algorítmicos.

Nota: perdón por ser vago. Esta es mi primera respuesta quora.

@Anónimo Quería resolver la siguiente pregunta: Encontrar la suma máxima de ruta entre dos hojas de un árbol binario: GeeksforGeeks y yo resolvimos (un amigo mío me ayudó). Esta es la solución:

private static int find (raíz de TreeNode, int [] res) {
if (raíz == nulo)
devuelve 0;
int left = find (root.left, res);
int right = find (root.right, res);
int max = left + right + root.val;
if (max> res [0])
res [0] = max;
return Math.max (izquierda, derecha) + root.val;
}
pero no entiendo por qué funciona

Dispara tu pregunta, intentaremos 🙂
Por cierto, puede publicar su pregunta en Stack Overflow también en paralelo.

PD: Sugeriría que rastree ese ejemplo dado (que tiene 27 como su suma máxima) creando un árbol de recursión. Mantenga 2 variables de estado: (1) suma máxima de ruta de nodo a hoja en cada nodo (2) suma máxima global entre dos hojas. Creo que de esta manera puedes tener una intuición 🙂

Wikipedia es un gran recurso, pero puede ser flojo o hacer trampa usarlo a veces. Por lo general, si hay un algoritmo común o con nombre, habrá un artículo detallado sobre él con pruebas, límites y aplicaciones, etc.