Entrevista a los 150 mejoresfácil

Encontrar el mínimo en una matriz ordenada rotada

Guía detallada e implementación de Python para el problema 'Buscar mínimo en una matriz ordenada rotada'.

Declaración del problema

fácil

Supongamos que una matriz de longitud n ordenada en orden ascendente se gira entre 1 y n veces. Por ejemplo, la matriz [0,1,2,4,5,6,7] podría convertirse en [4,5,6,7,0,1,2] si se rota 4 veces.

Observe que rotar una matriz [a[0], a[1], ..., a[n-1]] 1 vez da como resultado [a[n-1], a[0], a[1], ..., a[n-2]].

Dada la matriz rotada ordenada nums de elementos únicos, devuelve el elemento mínimo de esta matriz.

Debes escribir un algoritmo que se ejecute en tiempo O(log n).

Escribe una función findMin(nums: List[int]) -> int.

Restricciones
  • n == len(nums)
  • 1 <= n <= 5000
  • -5000 <= nums[i] <= 5000
  • All integers in nums are unique
  • nums is sorted and rotated between 1 and n times

Ejemplos

Example 1
Input
nums = [3, 4, 5, 1, 2]
Output
1
Explanation

The original array was [1,2,3,4,5] rotated 3 times. The minimum is 1.

Example 2
Input
nums = [4, 5, 6, 7, 0, 1, 2]
Output
0
Explanation

The original array was [0,1,2,4,5,6,7] rotated 4 times. The minimum is 0.

Example 3
Input
nums = [11, 13, 15, 17]
Output
11
Explanation

Array is not rotated (or rotated n times). The minimum is the first element.

Need a Hint?
Considere la posibilidad de utilizar estructuras de datos específicas de la búsqueda binaria, como conjuntos o montones.
Edge Cases to Watch
  • Estructuras de entrada vacías
  • Entradas de un solo elemento
  • Grandes límites numéricos

¿Listo para resolver?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Abrir en el editor
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Recursos recomendados de Python

Amplíe sus conocimientos con tutoriales interactivos relacionados, hojas de trucos y comparaciones de códigos.