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 d'implémenter des fonctions et des classes spécifiques en fonction du thème.
En guise de contre-mesure, il semble qu'un site appelé Let Code prendra des mesures.
Un site qui forme une puissance algorithmique capable de résister aux tests de codage dont on parle très tôt.
Je pense qu'il vaut mieux avoir la puissance de l'algorithme d'un être humain, donc je vais résoudre le problème de manière irrégulière et écrire la méthode que j'ai pensé à ce moment-là sous forme de mémo.
Table de codes Leet commençant à zéro
Dernière fois Leet Code Day 13 "338. Counting Bits" à partir de zéro
En gros, je voudrais résoudre l'acceptation facile par ordre décroissant.
Le niveau de difficulté est facile. Cette question fait également partie des 100 questions les plus appréciées. Pourquoi est-ce parce qu'il y a tant de bons chiffres? J'ai pensé, mais quand j'ai essayé de le résoudre, cela s'est avéré être vrai, alors il serait peut-être préférable de le résoudre par moi-même avant de voir la solution.
Le problème est que vous recevrez un tableau de nombres non vides, veuillez donc extraire les deux nombres non affichés et les renvoyer.
Example 1:
Input: [2,2,1] Output: 1
Dans cet exemple, 1 seul est renvoyé car il n'y en a qu'un dans le tableau.
Example 2:
Input: [4,1,2,1,2] Output: 4
Dans cet exemple, seul 4 est dans le tableau, donc 4 est renvoyé.
Cette fois, j'ai essayé de l'écrire comme si je connaissais un peu le système d'information.
class Solution:
def singleNumber(self, nums: List[int]) -> int:
ans = 0
for n in nums:
ans ^= n
return ans
# Runtime: 80 ms, faster than 93.89% of Python3 online submissions for Single Number.
# Memory Usage: 16.5 MB, less than 6.56% of Python3 online submissions for Single Number.
Si vous n'êtes pas familier avec Python
ans ^= n
C'est peut-être ce que c'est, donc je voudrais ajouter qu'il s'agit d'un opérateur d'affectation qui représente la somme logique exclusive (XOR).
Comme beaucoup d'entre vous le savent, les XOR qui renvoient 1 alors qu'une seule des deux entrées est 1 sont parfaits pour ce problème.
En fait, lorsque j'ai examiné Discuss après l'avoir résolu, il y avait de nombreuses réponses en utilisant XOR. S'il semble y avoir une meilleure réponse, je l'ajouterai.
Recommended Posts