Solución

@jesusepulvettl_c6e0b000·2/9/2026TypeScript
solution.tsTypeScript
def search_rotated_array(nums: list[int], target: int) -> int:
    izq = 0
    der = len(nums) - 1
    medio = (izq + der)//2
    valor_medio = nums[medio]
    
    while izq <= der:
        medio = (izq + der)//2
        valor_medio = nums[medio]
        
        if nums[izq] <= nums[der]:

            if valor_medio == target:
                return medio
            elif valor_medio < target:
                izq = medio + 1
                continue
            else:
                der = medio - 1
                continue

        if valor_medio < nums[izq]:

            if valor_medio < target < nums[der]:
                izq = medio + 1
                continue
            else:
                der = medio - 1
                continue

        if  nums[izq] < valor_medio:

            if nums[izq] < target < valor_medio:
                der = medio - 1
                continue
            else:
                izq = medio + 1
                continue

        if nums[izq] == valor_medio:

            if valor_medio == target:
                return medio
            else:
                izq = medio + 1
    return -1
0respuestas
Respuestas

Aún no hay respuestas

¡Sé el primero en responder!

Escribir un comentario

Recuerda ser amable. Estás comentando la solución de otra persona. Comparte tu perspectiva de forma constructiva y respetuosa.

Debes iniciar sesión para publicar un comentario.