Algorithm Two pointer algorithm

알고리듬 Two pointer algorithm을 알아보겠습니다.


투 포인터 알고리듬은 두 개의 인덱스를 이용해서 값을 구하는 것입니다.

예를 들어 어떤 배열이 있을 때, 두 원소의 합이 특정한 값을 가지는 것을 찾을 때 사용할 수 있습니다.
두 수의 합이 9가 되는 값이 배열에 있는지 찾아봅시다.

포인터 두 개를 사용합니다. 하나는 맨 앞에 다른 하나는 맨 끝에 놓습니다.
두 포인터의 합을 구합니다. 13입니다.
13은 9 보다 큽니다.
end의 값을 하나 줄입니다.





10은 9 보다 큽니다.

end의 값을 하나 줄입니다.








8은 7 보다 큽니다.

start의 값을 하나 늘립니다.






9를 찾았습니다.




한 가지 중요한 점은 위와 같은 방법으로 값을 구하려면 배열의 정렬이 필수입니다.


Python 코드로 알아봅시다.





끝.


카테고리: Algorithm

댓글

이 블로그의 인기 게시물

Python OpenCV 빈 화면 만들기

Python urllib.parse.quote()

Python bytes.fromhex()

Android AVD Ram size change

Forensics .pyc 파일 .py로 복구하기

Android Minimum touch target size

KiCad 시작하기 7 (FreeRoute 사용하기 2)

Android Notification with Full Screen

C++ OpenCV 모폴로지 침식, 팽창

KiCad 시작하기 2 (PCB 만들기)