源代码
代码中的findMinIndex()方法如下:
private int findMinIndex( )
{
int i;
int minIndex;
for( i = 0; theTrees[ i ] == null; i++ )
;
for( minIndex = i; i < theTrees.length; i++ )
if( theTrees[ i ] != null &&
theTrees[ i ].element.compareTo( theTrees[ minIndex ].element ) < 0 )
minIndex = i;
return minIndex;
}
当中的第一个循环作用跟目的是什么?如果数组如[1,null,3,4]那么找出来的最小值不是错的?
배열에서 null이 아닌 첫 번째 요소 첨자를 찾습니다. 목적은 두 번째 단계에서 minIndex로 표시된 배열 요소가 null이 아닌지 확인하는 것입니다.
[1,null,3,4]는 두 번째 루프에서 null이 확인되었으므로 최소값을 찾을 수 있습니다