Mi pare corretta, e ad occhio direi che quell'if di controllo sulla i e j non dovrebbe servire (i limiti sui for dovrebbero già essere giusti così).