프로그래밍/SAP ABAP

read table ... binary search

2019. 5. 10. 18:09

Read table 구문을 이용할 경우, binary search 를 이용하면 속도가 빨라진다.

하지만 binary search 하기 전에 sort를 하지 않은 상태에서 하게 되면 잘못된 데이터를 찾게 될 수 있다.

그 이유인 즉,

A
B
C
D
E
F
G

에서 B를 찾으려고 할 때 분할해서 찾게 되는데,
D 지점에서 B와 크기를 비교하여 D보다 작은 구역
A
B
C
중에서 다시 B와 크기를 비교하여 찾는 방식.

따라서 sort가 되어있지 않은 상태라면 충분히 잘못된 데이터를 읽어올 수 있게 된다.