[Algorithm] π Two Pointer μκ³ λ¦¬μ¦
π Two Pointer μκ³ λ¦¬μ¦μ΄λ
λ€μμ Two Pointer
μ μ¬μ μ μ μμ΄λ€.
λ κ°μ ν¬μΈν°λ₯Ό μ¬μ©ν΄ λ¬Έμ λ₯Ό ν΄κ²°νλ μκ³ λ¦¬μ¦
ν¬ ν¬μΈν° μκ³ λ¦¬μ¦μ 리μ€νΈλ λ°°μ΄μ μ κ·Όν λ, 2κ°μ ν¬μΈν°μ μμΉλ₯Ό κΈ°λ‘νλ©΄μ μ²λ¦¬νλ μκ³ λ¦¬μ¦μ΄λ€.
λ³΄ν΅ S(Start)
, E(End)
μ κ°μ λ°©μμΌλ‘ μ΄λ¦μ λΆμΈλ€.
λ€μμ Two Pointer
μ κ΄λ ¨λ κ°λ¨ν μμμ΄λ€.
π Two Pointer μμ
Two Pointer
μ κ΄λ ¨λ κ°λ¨ν λ¬Έμ λ₯Ό μμ보μ
λ€μκ³Ό κ°μ΄ 5κ°μ μ¬λ£λ₯Ό μ£Όκ³ , μ°¨κ° 2λΌκ³ νμ.
λ¨μνκ² μ΄κ²μ λ½μλ΄κΈ° μν΄μλ μ²μ 5μ λλ¨Έμ§ 4κ°λ₯Ό λΉκ΅ν ν, 2λ λλ¨Έμ§μ λΉκ΅νλ μμ νμμ ν΄μΌνλ€.
νμ§λ§ μ΄ λ°°μ΄μ λ€μκ³Ό κ°μ΄ μ λ ¬μ ν ν, S
μ κ°μ μ¦κ°μν€λ©΄μ μ°¨κ° 2κ° λ λκΉμ§ μ¦κ°μν¨λ€.
μ΄ν μ°¨κ° 2λ³΄λ€ μ»€μ§λ©΄ E
μ κ°μ μ¦κ°μν¨λ€.
μ΄ν λ€μ 2κ°λλ©΄ μ΄λ₯Ό λ°λ³΅νλ©΄μ μ°Ύμλ΄λ λ°©μμ΄λ€.
μ΄λ¬ν Two Pointer
λ°©μμ S
κ° μ²μλΆν° λκΉμ§, E
κ° μ²μλΆν° λκΉμ§ κ°λ μκ³ λ¦¬μ¦μ΄λ―λ‘ μμ νμ
μ O(n^2)μ λΉν΄ O(2n)μ λλ‘ λ§€μ° μ€μ΄λ€κ² λλ€.
π κ΄λ ¨ μμ
tag:Two Pointer
κ°μΈ κ³΅λΆ κΈ°λ‘μ© λΈλ‘κ·Έμ
λλ€.
ν리거λ μ€λ₯κ° μμ κ²½μ° μ 보ν΄μ£Όμλ©΄ κ°μ¬νκ² μ΅λλ€.π