Heim >Backend-Entwicklung >Python-Tutorial >Suchen – Einfügeposition suchen

Suchen – Einfügeposition suchen

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-09-29 12:10:03983Durchsuche

Search- Search Insert Position

Ich habe Search-35 gemacht. Suche Einfügeposition

Hier ist die Frage:
Geben Sie bei einem sortierten Array unterschiedlicher Ganzzahlen und einem Zielwert den Index zurück, wenn das Ziel gefunden wird. Wenn nicht, geben Sie den Index an die Stelle zurück, an der er wäre, wenn er in der richtigen Reihenfolge eingefügt würde.

Sie müssen einen Algorithmus mit einer Laufzeitkomplexität von O(log n) schreiben.

Beispiel 1:

Eingabe: nums = [1,3,5,6], Ziel = 5
Ausgabe: 2
Beispiel 2:

Eingabe: nums = [1,3,5,6], Ziel = 2
Ausgabe: 1
Beispiel 3:

Eingabe: nums = [1,3,5,6], Ziel = 7
Ausgabe: 4

Code:

class Solution(object):
    def searchInsert(self, nums, target):
        index = 0
        for index in range(len(nums)):
            if nums[index] == target:
                return index
            elif nums[index] > target:
                return index
        return len((nums))

Mein Gedanke:
Ich verwende range(len(nums)), um alle Zahlen in nums zu iterieren. Überprüfen Sie, ob es dieselbe Nummer gibt. In der Zwischenzeit werde ich prüfen, ob nums[index] > Ziel. Wenn dies wahr ist, bedeutet dies, dass die Nummern nicht dieselbe Nummer wie das Ziel haben. Es wird also der Index zurückgegeben, der die genaue Position zum Einfügen darstellt. Andernfalls wird die Länge der Zahlen zurückgegeben.

Fragen können Sie gerne hinterlassen!!!
Bitte teilen Sie mir mit, wo Sie gute Lösungen für Python (Leetcode) finden können

Das obige ist der detaillierte Inhalt vonSuchen – Einfügeposition suchen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn