find key
μ»΅ λ리기 κ²μ
λ¬Έμ
μΈ κ°μ λ€μ§ν μ»΅ μ€ ν κ°μ μ»΅ μμ μ΄μ κ° μμ΅λλ€. λΉμ μ΄ μ΄μ λ₯Ό μ°ΎκΈ° μν΄ μ»΅μ λ€μ΄μ¬λ¦¬λ €λ μκ°, Drogonμ΄ λΉ λ₯΄κ² μ»΅μ μμΉλ₯Ό λ€μκΈ° μμν©λλ€. μ»΅μ κ΅νμ΄ λλ¬μ λ, μ΄μ κ° λ€μ΄μλ μ»΅μ μ°ΎμμΌ ν©λλ€.
μ»΅μ μμΉλ μΈλ±μ€λ‘ ννλ©λλ€. (0λΆν° μμ)
ν€κ° λ€μ΄μλ μ»΅μ μΈλ±μ€μ κ΅νλ μ»΅μ μΈλ±μ€λ₯Ό λνλ΄λ λ°°μ΄(swaps)μ μ λ ₯μΌλ‘ λ°μ΅λλ€.
μλ₯Όλ€μ΄, μ΄μ κ° λ€μ΄μλ μ»΅μ μ²μ μμΉκ° 0
μ΄κ³ μ»΅μ΄ κ΅νλλ μμκ° λ€μκ³Ό κ°λ€λ©΄ [(0, 1), (1, 2), (1, 0)]
첫 κ΅νλ μ΄μ κ° μλ μ»΅μ 0 μμ 1λ‘ μ΄λνκ² λ©λλ€.
λλ²μ§Έ κ΅νλ μ΄μ κ° μλ μ»΅μ 1 μμ 2λ‘ μ΄λνκ² λ©λλ€.
λ§μ§λ§ κ΅νλ 1μ μλ μ»΅μ΄ 0μΌλ‘ κ°μ§λ§, μ΄μ κ° μλ μ»΅μλ μν₯μ λ―ΈμΉμ§ μμ΅λλ€.
λ°λΌμ μ΄μ κ° μλ μ»΅μ μμΉλ 2κ° λ©λλ€.
swaps = [[0, 1], [1, 2], [1, 0]] firstPosition = 0 findKey(firstPosition, swaps) == 2
μ»΅μ κ°―μλ μ΅μν λ κ° μ΄μμ λλ€.
λ¬Έμ μ΄ν΄
첫λ²μ§Έ μΈμλ μ΄μ μ μμΉμ΄λ€. λλ²μ§Έ μΈμλ‘ λ€μ΄μ¨ λ°°μ΄μμ λ°°μ΄μμ μ΄μ μ μμΉλ₯Ό μ°Ύκ³ -> λ°λμμΉλ₯Ό κΈ°μ΅ -> μ΄μ μΆμ -> λ°λ μμΉκ° μμ μ κΈ°μ΅ ->.. λλ²μ§Έ μΈμκ° λλ λ κΉμ§ μΆμ νλ€!
ν΄κ²° λ°©λ²
start μΈμμ κ°μ κ°μ§ λ°°μ΄μ μ°Ύλλ€.
κ°μ μ«μμΈ μΈλ±μ€κ° 0μ΄λ©΄ μΈλ±μ€ 1μ μ«μλ₯Ό λ³μμ λ΄λλ€. μΈλ±μ€ 1μ μ«μμ κ°λ€λ©΄ μΈλ±μ€2μ μ«μμ λ³μμ λ΄λλ€.
swapsμ λ°°μ΄μ μ΄ λ€ λμλ€λ©΄ λ§μ§λ§μΌλ‘ λ΄μ μ«μλ₯Ό return ν΄μ€λ€.
μ½λ ꡬν
κ²°κ³Ό λΆμ
ν μ€νΈ ν΅κ³Ό
startIdx μ endIdx λ³μλ₯Ό κ΅³μ΄ λ§λ€ νμ μλ€λ νΌλλ°±μ λ°μμ΅λλ€.
:white_check_mark: νλμ½λ©μ μνκΈ° μν΄ λ³μλ₯Ό λ΄κ² λμμ§λ§ 0κ³Ό 1μ΄λΌλ λΆλͺ ν κ°μ μ§μ μ λ ₯νλκ² λ λ«λ€.
Last updated
Was this helpful?