O(n)
    在O(n^3)基础上做了一些调整