¿Complejidad de tiempo de Math.abs en Java?

Para una tarea que estoy haciendo, necesito asegurarme de que tengo un algoritmo ejecutándose en tiempo O (n), y estoy usando la función Math.abs () dentro de algunos bucles, así que me pregunto si se Math.abs()ejecuta en O (¿1 vez?

Pensaría que sí, pero no puedo encontrar una respuesta a esto en ningún lado. Solo quiero asegurarme de que no estoy haciendo accidentalmente un algoritmo O (n 2 ) sin saberlo.

Respuesta 1

La implementación de Math.abs :

public static int abs(int a) {
    return (a < 0) ? -a : a;
}

Esta será una complejidad de tiempo O (1), ya que la operación en sí es tiempo constante y la entrada es fija. Independientemente de la entrada, la operación siempre tomará el tiempo de ahorro.

Bucle: O (n): la complejidad temporal de un bucle se considera como O (n) si las variables del bucle se incrementan / disminuyen en una cantidad constante. Por ejemplo, las siguientes funciones tienen O (n) complejidad de tiempo.

   // Here c is a positive integer constant   
   for (int i = 1; i <= n; i += c) {  
        // some O(1) expressions
   }

   for (int i = n; i > 0; i -= c) {
        // some O(1) expressions
   }
Respuesta: 2

Estoy tratando de generar artefactos para el análisis XML log4j usando JAXB. Estoy usando el dtd http://logging.apache.org/log4j/1.2/apidocs/org/ap.../log4j/xml/doc-files/log4j.dtd y log.xml en línea. YO ...

En el nivel de código de bytes de Java, ¿hay alguna diferencia entre una instrucción if simple (Ejemplo 1) y una instrucción if normal (Ejemplo 2): Ejemplo 1: instrucción if (cond); Ejemplo 2: if (cond) {...

Así que estoy implementando proyectos de eclipse. Tengo un conjunto de complementos que viven en un 'proyecto de características' y ese proyecto de características vive en un proyecto de 'Actualizar sitio'. Todo va bien en la primera construcción. Dulce como una nuez. ...

Tengo dos clases que deben asignarse a XML (eventualmente todas se modificarán a Anotaciones, pero actualmente necesitamos admitir las asignaciones de XML). Tengo un objeto de usuario que actualmente se ve ...