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.
Im Moment löse ich das Medium mit den 100 beliebtesten Fragen. Easy wurde gelöst. Wenn Sie interessiert sind, gehen Sie bitte zum Tisch.
Twitter Ich mache es.
406. Queue Reconstruction by Height
Der Schwierigkeitsgrad ist Mittel. Auszug aus den 100 beliebtesten Fragen.
Angenommen, Sie haben eine zufällige Liste von Personen in Ihrer Warteschlange. Jede Person besteht aus einem Paar von ganzen Zahlen, "(h, k)", wobei "h" die Größe der Person ist und "k" die Person ist, die sich vor der Person befindet und eine Größe größer oder gleich "h" hat. Bezieht sich auf die Anzahl der Personen.
In diesem Problem entwerfen wir einen Algorithmus, der eine bestimmte Warteschlange rekonstruiert.
Input: [[7,0], [4,4], [7,1], [5,0], [6,1], [5,2]]
Output: [[5,0], [7,0], [5,2], [6,1], [4,4], [7,1]]
Es ist ein gutes Problem, dass Sie die beiden Ganzzahlen organisieren und einen genauen Algorithmus formulieren müssen.
Im Falle eines solchen Problems ist es leichter zu verstehen, wenn das Problem in kleine Teile unterteilt ist und jeder Prozess unabhängig betrachtet wird.
class Solution:
def reconstructQueue(self, people: List[List[int]]) -> List[List[int]]:
if not people: return []
dic, height, res = {}, [], []
for i in range(len(people)):
p = people[i]
if p[0] in dic:
dic[p[0]] += (p[1], i),
else:
dic[p[0]] = [(p[1], i)]
height += p[0],
height.sort()
for h in height[::-1]:
dic[h].sort()
for p in dic[h]:
res.insert(p[0], people[p[1]])
return res
# Runtime: 88 ms, faster than 99.14% of Python3 online submissions for Queue Reconstruction by Height.
# Memory Usage: 14.3 MB, less than 5.88% of Python3 online submissions for Queue Reconstruction by Height.
Sehr schnell! Wenn Sie die Diskussion sorgfältig prüfen, [dies] Ich war fast überrascht von (https://leetcode.com/problems/queue-reconstruction-by-height/discuss/89345/Easy-concept-with-PythonC%2B%2BJava-Solution).
Das ist alles für diese Zeit. Danke für deine harte Arbeit.
Recommended Posts