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.
Anscheinend ergreifen viele Ingenieure Maßnahmen auf der Website namens LetCode.
Es ist eine Site, die die algorithmische Leistung trainiert, die dem Codierungstest standhält, der in der frühen Geschichte durchgeführt wird, und es ist ein unvermeidlicher Weg für diejenigen, die eine Karriere bei einem ausländischen Technologieunternehmen aufbauen möchten.
Ich habe es groß geschrieben, aber ich habe im Moment keine Pläne für ein solches Interview.
Als IT-Ingenieur ist es jedoch besser, die gleiche Algorithmusleistung wie eine Person zu haben. Daher möchte ich das Problem unregelmäßig lösen und die Methode, die ich damals dachte, als Memo aufschreiben.
Ich löse es mit Python3.
Letztes Mal Leet Code Day56 ab Null "5453. Running Sum of 1d Array"
Im Moment priorisiere ich das Medium der 100 beliebtesten Fragen. Easy wurde gelöst. Wenn Sie interessiert sind, gehen Sie bitte zum Tisch.
Twitter Ich mache es.
Der Schwierigkeitsgrad ist einfach.
Ich habe einen Artikel geschrieben, weil ich dachte, es sei ein gutes Problem, einen bestimmten Algorithmus zu lernen.
Das Problem erhält ein sortiertes Array und die Zielwerte. Wenn das Ziel gefunden wird, wird sein Index zurückgegeben. Wenn Sie es nicht finden können, entwerfen Sie einen Algorithmus, der den Index zurückgibt, wenn er der Reihe nach eingefügt wurde.
Sie können davon ausgehen, dass das Array keine Duplikate enthält.
Example 1:
Input: [1,3,5,6], 5 Output: 2 Example 2:
Input: [1,3,5,6], 2 Output: 1 Example 3:
Input: [1,3,5,6], 7 Output: 4 Example 4:
Input: [1,3,5,6], 0 Output: 0
class Solution:
def searchInsert(self, nums: List[int], target: int) -> int:
low = 0
high = len(nums) -1
while low <= high:
mid = (low + high) // 2
if nums[mid] == target:
return mid
elif nums[mid] < target:
low = mid + 1
else:
high = mid - 1
return low
# Runtime: 56 ms, faster than 49.71% of Python3 online submissions for Search Insert Position.
# Memory Usage: 14.6 MB, less than 16.72% of Python3 online submissions for Search Insert Position.
Wie jeder, der es weiß, wissen wird, ist es eine Frage der Zweiteilung!
In Python gibt es eine "Halbierung" in der Bibliothek, so dass Sie leicht damit schreiben können, aber ich denke, dass die Fähigkeit, die Prinzipien zu kennen, wichtig ist, also habe ich sie geschrieben.
Es könnte irgendwo hilfreich sein, wenn Sie es wissen ...?
Bis hierher für diese Zeit. Danke für deine harte Arbeit.
Recommended Posts