La funcion en c++ de upper_bound suele ser muy util. En java quedaria algo como lo que aparece en la siguiente imagen:
Asi tendriamos complejidad de O(log2(n))
Basicamente se trata de escribir una busqueda binaria y modificarla.
El if final es por si no encontramos ningun valor mayor que el dado, entonces al igual que en la funcion de C++ se devuelve la posicion final dada a la funcion.
No hay comentarios:
Publicar un comentario