3.1.28

3.1.28 #

解答 #

将重新分配数组空间的代码提前,然后添加判断语句即可。 BinarySearchSTOrderedInsertion

/* 省略 */

if (_n == _keys.Length)
    Resize(_n * 2);

// 如果插入的键比所有键都大则直接插入末尾。
if (_n == 0 || _keys[_n - 1].CompareTo(key) < 0)
{
    _keys[_n] = key;
    _values[_n] = value;
    _n++;
    return;
}

var i = Rank(key);

/* 省略 */

另请参阅 #

SymbolTable 库