clase Solución: def búsqueda_binaria_recursiva(self, nums: list[int], objetivo: int, base: int): if (len(nums) == 1): return base posición = int((len(nums) – 1)/2) if (nums[posición] == objetivo): return base + posición + 1 elif (nums[posición] > objetivo): base = base + int((len(nums) – 1) / 2) return Solución.búsqueda_binaria_recursiva(self, nums[posición+1:], objetivo, base) elif . . . Read more
Soy nuevo/a en la programación funcional. El desafío que tengo tiene que ver con la forma de comprender cómo funciona un árbol de búsqueda binaria en Haskell. En otros programas (C, C++), tenemos algo llamado “root”. Lo guardamos en una variable. Insertamos elementos en él y hacemos balanceo, etc. El . . . Read more
Estoy tratando de calcular el Big-O de esta función que está reflejando el árbol de búsqueda binario (estructura de datos). Pero no estoy seguro si lo calculé correctamente o no. ¿Podrías explicar cuál sería el Big-O de esta función? void mirror(NODE *root){ if (root) { mirror(root->left); mirror(root->right); NODE *temp = . . . Read more
Mi profesor me da esta sintaxis para realizar una búsqueda binaria: BS = function(array, x, eps) { lo <- 1; n <- length(array) while (lo <= n) { mid <- as.integer(round((lo + n) / 2)) if (abs(array[mid] – x) <= eps) { return(mid) } else if (array[mid] < x) { . . . Read more