Problem
Find the position (counting from 0) of the first negative number in the list.
Implement first_negative_index(numbers).
Input
numbers: The list of integers.
Output
Return the index, or -1 if there are no negative numbers.
Einschränkungen
0 ≤ length ≤ 100,000
Beispiele
Eingabe:
numbers = [4, 0, -2, -7]
Erwartete Ausgabe:
expected = 2
Eingabe:
std::vector<long long> numbers = {4, 0, -2, -7};
Erwartete Ausgabe:
long long expected = 2;
Eingabe:
long[] numbers = new long[] {4, 0, -2, -7};
Erwartete Ausgabe:
long expected = 2;
Erläuterung
-2 at index 2 is the first negative value.
Eingabe:
numbers = [1, 2, 3]
Erwartete Ausgabe:
expected = -1
Eingabe:
std::vector<long long> numbers = {1, 2, 3};
Erwartete Ausgabe:
long long expected = -1;
Eingabe:
long[] numbers = new long[] {1, 2, 3};
Erwartete Ausgabe:
long expected = -1;
Erläuterung
There are no negative numbers, so the answer is -1.
So gehst du vor
Versuch es zuerst allein und öffne dann einen Hinweis nach dem anderen.
Hinweis 1
Du brauchst nur die erste Position, an der ein Wert unter null liegt.
Hinweis 2
Gehe von links nach rechts und stoppe, sobald du einen findest.
Hinweis 3
Wenn kein negativer Wert vorkommt, gib unbedingt den Wert für den Nicht-gefunden-Fall zurück.
Erwartete Komplexität
Zeit O(n), zusätzlicher Speicher O(1)
Referenzen
Diese Aufgabe wurde für CodeUtility angepasst. Beachte die oben genannten Vorgaben und Einschränkungen.