Beh... l'istruzione
int minimo = v[0];
viene ripetuta per ogni ciclo del for (l'hai messa dentro al ciclo, dovrebbe stare fuori).
Questa istruzione crea una nuova variabile (che va a nascondere quella evidentemente dichiarata fuori dal metodo, a livello di classe). La variabile fuori dal metodo, pertanto, non viene assolutamente toccata.
Quello che volevi fare tu, probabilmente, era inizializzare minimo fuori dal ciclo for:
minimo = v[0];
for( ... ) {
...
}
Se non esistesse una variabile "minimo" dichiarata fuori dal metodo a livello di classe, quel codice non compilerebbe proprio.