嵌套循环优化¶
网上分析挺多,我就不重复了,直接上个有效的优化方案。
二分查找¶
示例代码
TYPES:
BEGIN OF ty_data,
field1 TYPE string,
field2 TYPE string,
END OF ty_data.
DATA:
lt_head TYPE STANDARD TABLE OF ty_data,
ls_head TYPE ty_data,
lt_item TYPE STANDARD TABLE OF ty_data,
ls_item TYPE ty_data.
SORT lt_item BY field1 field2.
LOOP AT lt_head INTO ls_head.
" ABAP中的二分查找,会找到重复项的首项
READ TABLE lt_item TRANSPORTING NO FIELDS WITH KEY field1 = ls_head-field1 BINARY SEARCH.
IF sy-subrc = 0.
LOOP AT lt_item INTO ls_item FROM sy-tabix.
IF ls_item-field1 <> ls_head-field1.
EXIT.
ENDIF.
" write something...
ENDLOOP.
ENDIF.
ENDLOOP.