two pointers are created to track the maximal elements in both o and maxnarray . the smallest element is added into temparraylist consider the sizes of o and maxnarray may be different . concode_field_sep ArrayList<Double> a concode_elem_sep State state concode_elem_sep int n concode_field_sep boolean getAscending concode_elem_sep void init concode_elem_sep void binaryInsert concode_elem_sep Comparator<T> getComparator concode_elem_sep ArrayList<T> sortedMerge concode_elem_sep State terminatePartial concode_elem_sep ArrayList<Double> terminate concode_elem_sep boolean iterate
boolean function ( State arg0 ) { if ( arg0 != null ) { state . n = arg0 . n ; state . a = sortedMerge ( arg0 . a , state . a , getAscending ( ) , arg0 . n ) ; } return true ; }