Quella che segue è una domanda dell'intervista di programmazione: dati 3 matrici ordinate. Trova (x, y, z), (dove x è dal primo array, y è dal secondo array e z è dal terzo array), tale che Max (x, y, z) - Min (x, y, z) è minimo Questa domanda è discussa qui: link
Una possibile soluzione discussa nella pagina della carriera è la seguente: "Prendi tre puntatori, ognuno al primo elemento della lista, poi trova il minimo di essi, calcola max (xyx) -Min (xyz). meno che fino ad ora risulta modificarlo, incrementa il puntatore dell'array che contiene il minimo di essi "
La mia domanda è, come possiamo dimostrare la correttezza di questo algoritmo? In caso contrario, possiamo arrivare a casi in cui l'algoritmo non riesce. E se è così, qual è un algoritmo corretto per risolvere questo problema con la prova.