Sobes.tech

Python

Wie bewerten Sie die Attraktivität und das Nutzungspotenzial der Programmiersprache Go in Ihrer beruflichen Tätigkeit?

Junior — Middle
149

Kannst du erklären, wie next() funktioniert?

148

Wie implementiert man einen einfachen Lock-Mechanismus im Speicher zum Schutz vor gleichzeitigen Zugriffen ohne externe Abhängigkeiten?

147

Wie groß war die maximale Datenmenge, die Sie jemals in Ihrer Praxis gespeichert oder verarbeitet haben?

Junior — Middle
146

Kannst du die Komplexität dieser Lösung (in Zeit und Speicher) einschätzen? Und warum ist die Komplexität nicht O(n^2)?

145

# Geldautomat, der mit Geldkassetten geladen wird, mit unserer App an Bord # sollte in der Lage sein, Banknoten für einen bestimmten Betrag auszugeben oder eine Ablehnung zu antworten # Beim Ausgeben werden die Banknoten vom Saldo des Geldautomaten abgezogen. # Erlaubte Nennwerte: 50R, 100R, 500R, 1000R, 5000R. class ATM: pass # Platz für den Code # Gerät des Geldautomaten: # - Das Geld befindet sich in Kassetten im Inneren des Geldautomaten, die vom Kurier geladen und nachgefüllt werden; # - In jeder Kassette befinden sich Banknoten ihres Nennwerts; # - Der Geldautomat kann die verbleibenden Banknoten in den Kassetten zählen, aber diese Operation dauert lange - sie sollte so selten wie möglich aufgerufen werden. # API zur Interaktion mit der Hardware des Geldautomaten. # Das SDK-Interface kann bei Bedarf geändert/erweitert werden, wenn dies vereinbart wurde class SDK(ABC): @abstractmethod def count_banknotes(self, banknote: int) -> int: pass @abstractmethod def move_banknote_to_dispenser(self, banknote: int, count: int) -> None: pass @abstractmethod def open_dispenser(self) -> None: pass

143

Wann hast du zuletzt algorithmische Aufgaben für Übungs- oder Projektzwecke gelöst?

Junior — Middle
143

# OneEditApart("Katze", "Hund") -> falsch # OneEditApart("Katze", "Katzen") -> wahr # OneEditApart("Katze", "cut") -> wahr # OneEditApart("Katze", "cast") -> wahr # OneEditApart("Katze", "at") -> wahr # OneEditApart("Katze", "acts") -> falsch def OneEditApart(s1, s2) -> bool:

142

Haben Sie Erfahrung in der Erstellung und Wartung von auf verteilten Architekturen basierenden Systemen?

Junior — Middle
142

Haben Sie Erfahrung in der Unterstützung oder Entwicklung verteilter Systeme?

141

class ATM(SKD): def __init__(self, atm_api: "SKD"): self.atm_api: SKD = atm_api self.bills_count: dict[int:int] = {bill: self.atm_api.count_banknotes(bill) for bill in BILLS} def withdraw(self, amount: int) -> bool: bills_plan: dict[int: int] = {} remaining = amount for bill in BILLS: available = self.bills_count[bill] take = min(remaining // bill, available) if take > 0: bills_plan[bill] = take remaining -= take * bill if remaining != 0: return False bills_count_const = {50: 0, 100: 2, 500: 0, 1000: 0, ...}, expected = True @pytest.mark.parametrize( "bills_count_const,expected", [ ({5000: 0, 1000: 0, 500: 0, 100: 0, 50: 0}, False), ({5000: 100, 1000: 100, 500: 100, 100: 100, 50: 100}, True), ({5000: 1, 1000: 0, 500: 0, 100: 2, 50: 0}, True) ] ) def test_false(bills_count_const, expected): atm = ATM(FakeSDK()) atm.bills_count = bills_count_const amount = 1000 res = atm.withdraw(amount) assert res == expected

141

In welchen Ländern erwägen Sie Arbeits- oder Kooperationsmöglichkeiten?

Junior — Middle
140

In welcher Phase befindet sich derzeit Ihre Jobsuche oder Ihr Projekt?

Junior — Middle
138

```python from collections import Counter def min_s(a: str, s: str) -> str: need = set(a) window = Counter() res = "" c = 0 left = 0 best_len = float('inf') for right, char in enumerate(s): if char in need and \ window[char] += 1 if window[char] == 1: c += 1 while c == len(need): if right - left + 1 < best_len: res = s[left:right + 1] best_len = right - left + 1 if s[left] in need: window[s[left]] -= 1 if window[s[left]] == 0: c -= 1 left += 1 return res ```

138

Der Interviewer klärt, ob der Kandidat die Bedingung der Aufgabe sieht.

134

Haben Sie Erfahrung in der Frontend-Entwicklung?

Junior — Middle
133

Erzähle mir mehr über dein letztes Projekt: Worum ging es, welche Aufgaben hast du erledigt, was war dein Verantwortungsbereich?

133
/5