Explore diversas soluciones LeetCode en Python, C++, JavaScript, SQL y TypeScript. Ideal para preparación de entrevistas, aprendizaje y práctica de código en múltiples lenguajes de programación. Enlace de repositorio de Github
Hay una matriz de números enteros. números ordenados en orden ascendente (con distinto valores).
Antes de pasar a su función, números es posiblemente girado en un índice de pivote desconocido k (1 <= k < números.longitud) de modo que la matriz resultante sea [números[k], números[k+1], ..., números[n-1], números[0], números[1], ..., números[k-1]] (0-indexado). Por ejemplo, [0,1,2,4,5,6,7] podría rotarse en el índice de pivote 3 y convertirse [4,5,6,7,0,1,2].
Dada la matriz números después la posible rotación y un número entero objetivo, devolver el índice de objetivo si esta en números, o -1 si no esta en números.
Debes escribir un algoritmo con O(log n) Complejidad del tiempo de ejecución.
Ejemplo 1:
Aporte: números = [4,5,6,7,0,1,2], objetivo = 0 Producción: 4
Ejemplo 2:
Aporte: números = [4,5,6,7,0,1,2], objetivo = 3 Producción: -1
Ejemplo 3:
Aporte: números = [1], objetivo = 0 Producción: -1
Restricciones:
1 <= números.longitud <= 5000-10 4 <= números[i] <= 10 4- todos los valores de
númerosson único. númeroses una matriz ascendente que posiblemente esté rotada.-10 4 <= objetivo <= 10 4
Pitón
al escribir import List class Solución: def search(self, nums: List[int], target: int) -> int: # return nums.index(target) si el objetivo está en nums else -1 n = len(nums) left, derecha = 0, n-1 mientras izquierda <= derecha: medio = izquierda + (derecha - izquierda) // 2 si nums[mid] > nums[-1]: izquierda = mid + 1 else: derecha = mid - 1 def binarioSearch (límite_izquierdo: int, límite_derecho: int, destino: int): izquierda, derecha = límite_izquierdo, límite_derecho mientras izquierda <= derecha: medio = izquierda + (derecha - izquierda) // 2 if nums[mid] == destino: retorno mid elif nums[mid] > target: derecha = mid - 1 else: left = mid + 1 return -1 if (respuesta := binarioSearch(0, left-1, target)) != -1: devolver respuesta return binarioSearch( izquierda, n-1, objetivo)

![[Leetcode] 1804. Implementar Trie II](https://hogantechs.com/wp-content/uploads/2025/03/1-1024x577.jpg)