Es scheint, dass Codierungstests in Ingenieurinterviews im Ausland durchgeführt werden, und in vielen Fällen besteht die Hauptsache darin, bestimmte Funktionen und Klassen entsprechend dem Thema zu implementieren.
Als Gegenmaßnahme scheint eine Website namens Let Code Maßnahmen zu ergreifen.
Eine Site, die algorithmische Leistung trainiert, die Codierungstests standhält, über die früh gesprochen wird.
Ich denke, es ist besser, die Algorithmuskraft eines Menschen zu haben, also werde ich das Problem unregelmäßig lösen und die Methode, die ich damals dachte, als Memo aufschreiben.
Letztes Mal Leet Code Day 13 "338. Counting Bits" ab Null
Grundsätzlich möchte ich die einfache Akzeptanz in absteigender Reihenfolge lösen.
Der Schwierigkeitsgrad ist einfach. Diese Frage stammt auch aus den Top 100 der beliebtesten Fragen. Warum liegt es daran, dass es so viele gute Zahlen gibt? Ich dachte, aber als ich versuchte, es zu lösen, stellte sich heraus, dass es wahr ist. Daher ist es möglicherweise besser, es selbst zu lösen, bevor ich die Lösung tatsächlich sehe.
Das Problem ist, dass Sie eine Reihe nicht leerer Zahlen erhalten. Extrahieren Sie daher die beiden nicht angezeigten Zahlen und geben Sie sie zurück.
Example 1:
Input: [2,2,1] Output: 1
In diesem Beispiel wird nur 1 zurückgegeben, da das Array nur eine enthält.
Example 2:
Input: [4,1,2,1,2] Output: 4
In diesem Beispiel befindet sich nur 4 im Array, sodass 4 zurückgegeben wird.
Diesmal habe ich versucht, es so zu schreiben, als wüsste ich etwas über das Informationssystem.
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.
Wenn Sie mit Python nicht vertraut sind
ans ^= n
Dies ist möglicherweise das, was es ist. Daher möchte ich hinzufügen, dass es sich um einen Zuweisungsoperator handelt, der die exklusive logische Summe (XOR) darstellt.
Wie viele von Ihnen wissen, sind XORs, die 1 zurückgeben, wenn nur einer der beiden Eingänge 1 ist, perfekt für dieses Problem.
Als ich mich nach dem Lösen mit Discuss befasste, gab es viele Antworten mit XOR. Wenn es eine bessere Antwort zu geben scheint, werde ich sie hinzufügen.
Recommended Posts