Quelle est la complexité temporelle de Java StringTokenizer.countTokens ()

James Willow:

Je suis plein d'espoir qu'il a une complexité constante de temps, mais son nom l'indique il compte effectivement les jetons.

Jacob G.:

Voici la mise en œuvre, si vous étiez curieux:

public int countTokens() {
    int count = 0;
    int currpos = currentPosition;
    while (currpos < maxPosition) {
        currpos = skipDelimiters(currpos);
        if (currpos >= maxPosition)
            break;
        currpos = scanToken(currpos);
        count++;
    }
    return count;
}

Je ne suis pas trop familier avec StringTokenizer, mais en supposant maxPositionpeut changer ( ce qui ressemble à elle peut), alors il est pas à temps constant. Vous devez aussi prendre en compte la complexité de skipDelimiterset scanToken.

Je suppose que tu aimes

Origine http://43.154.161.224:23101/article/api/json?id=197470&siteId=1
conseillé
Classement