Il semble que des tests de codage soient menés à l'étranger lors d'entretiens d'ingénieurs, et dans de nombreux cas, l'essentiel est de mettre en œuvre des fonctions et des classes spécifiques en fonction du thème.
Apparemment, de nombreux ingénieurs prennent des mesures sur le site appelé LetCode.
C'est un site qui forme la puissance de l'algorithme qui peut résister au test de codage qui est effectué au début, et c'est un chemin inévitable pour ceux qui veulent faire carrière dans une entreprise de technologie à l'étranger.
Je l'ai écrit en grand, mais je n'ai pas l'intention d'avoir une telle interview pour le moment.
Cependant, en tant qu'ingénieur informatique, il serait préférable d'avoir le même niveau de puissance d'algorithme qu'une personne, alors j'aimerais résoudre le problème de manière irrégulière et écrire la méthode que je pensais à l'époque sous forme de mémo.
Je le résolve avec Python3.
Table de code Leet commençant à zéro
Dernière fois Leet Code Day67 à partir de zéro "1486. Opération XOR dans un tableau"
À l'heure actuelle, je donne la priorité au moyen des 100 questions les plus appréciées. Easy a été résolu, donc si vous êtes intéressé, veuillez vous rendre à la table.
Twitter Je le fais.
** Blog technique Commencé! !! ** ** Je pense que la technologie écrira sur LetCode, Django, Nuxt, etc. ** C'est plus rapide à mettre à jour **, merci pour votre coopération!
709. To Lower Case Le niveau de difficulté est facile.
Le problème est que nous implémentons une fonction ToLowerCase () qui a le paramètre de chaîne str et renvoie la même chaîne en minuscules.
Example 1:
Input: "Hello" Output: "hello"
Example 2:
Input: "here" Output: "here"
Example 3:
Input: "LOVELY" Output: "lovely"
class Solution:
def toLowerCase(self, str: str) -> str:
return str.lower()
# Runtime: 24 ms, faster than 91.12% of Python3 online submissions for To Lower Case.
# Memory Usage: 14 MB, less than 15.17% of Python3 online submissions for To Lower Case.
Si vous connaissez `` inférieur '', vous pouvez l'écrire comme ceci, mais que se passe-t-il si vous ne le savez pas et que vous n'avez pas d'environnement pour le rechercher, ou si vous le résolvez sans utiliser les fonctions intégrées, on vous le dira lors d'une interview réelle.
Compte tenu d'une telle situation, c'est facile, mais cela semble étonnamment intelligent.
Ce qui m'est venu à l'esprit, c'est comment gérer avec un dictionnaire. Il stocke les majuscules dans la clé et les minuscules dans la valeur, et le transforme avec une instruction for pour le changer en l'élément de valeur correspondant s'il existe un élément correspondant à la clé. Cependant, j'ai pensé qu'une autre chose qui m'est venue à l'esprit pourrait être quelque chose qui utilise la conversion Unicode, alors j'ai mis en œuvre cela cette fois.
class Solution:
def toLowerCase(self, str: str) -> str:
ans = ''
for s in str:
if ord(s) >= ord('A') and ord(s) <= ord('Z'):
ans +=chr(ord(s) - (ord('A') - ord('a')))
else:
ans += s
return ans
# Runtime: 28 ms, faster than 71.56% of Python3 online submissions for To Lower Case.
# Memory Usage: 13.8 MB, less than 69.29% of Python3 online submissions for To Lower Case.
Utilisez la fonction «ord »pour le convertir en un point Unicode Unicode et le comparer.
Si cette valeur se trouve dans la plage, soustrayez les points Unicode, et finalement convertissez-la en chaîne de caractères en utilisant la fonction chr
et affectez-la à ʻans`. Dans d'autres cas, l'idée est qu'il est à l'origine en minuscules, vous pouvez donc simplement le remplacer.
En complément, la liste d'Unicode est la suivante. Liste Unicode 0000-0FFF
C'était très intéressant parce que j'y ai pensé dans une perspective à laquelle je ne penserais pas normalement. Alors c'est tout pour cette fois. Je vous remercie pour votre travail acharné.
Recommended Posts