Numéro de colonne du tableau Excel

1. Demande

  • Étant donné un nom de colonne dans un tableau Excel, renvoyez son numéro de colonne correspondant.

Par exemple,

    A -> 1
    B -> 2
    C -> 3
    ...
    Z -> 26
    AA -> 27
    AB -> 28 
    ...

Exemple 1:

Entrée: "A"
 Sortie: 1

Exemple 2:

Entrée: "AB"
 Sortie: 28

Exemple 3:

Entrée: "ZY"
 Sortie: 701

Deux, conversion de base

2.1 Analyse de la pensée

  1. A ~ Z représente 1 ~ 26, parcourir la chaîne, obtenir le caractère courant doit être l'un des A ~ Z, convertir le caractère courant en entier correspondant, ces entiers sont exprimés en base 26, qui peuvent être convertis en base 10 ;

2.2 Implémentation du code

class Solution {
    public int titleToNumber(String s) {
        int sum = 0;
        for(int i = 0; i < s.length(); i++) {
            int tmp = s.charAt(i) - 64;
            sum = sum * 26 + tmp;
        }
        return sum;
    }
}

2.3 Analyse de complexité

  • La complexité temporelle est O (N), la traversée de la chaîne consomme O (N) d'espace supplémentaire;
  • La complexité spatiale est O (1);

Je suppose que tu aimes

Origine blog.csdn.net/Sruggle/article/details/113716410
conseillé
Classement