sparse_vector写了一部分，供大家参考