Kacam.net

Interviewfragen

slice 和 map 的那些坑

「slice 是动态数组」—— 那把它传进函数改一下,外面看得见吗?

Vorlage kopieren, dann ein Modell wählen. Es spielt den Interviewer und fragt dich Szene für Szene ab, statt dir die Antwort hinzulegen.

Auf einem Telefon mit installierter App öffnet das System die App direkt. In WeChat lassen sich keine externen Apps öffnen — öffne es zuerst im Browser.

Am Ende des kopierten Textes steht der Lösungsschlüssel, mit dem das Modell dich bewertet. Lies ihn nicht vorher — es zählt, dass du selbst darauf gekommen bist.

答案是「看情况」,而讲清楚是什么情况,就得先说出传进去的到底是什么东西。第二幕从这里拆。

第三幕落到扩容:扩容之后原来那层共享关系发生了什么 —— 这是线上真出过事的地方,要你写出一个具体例子。

第四幕转到 map:为什么它的元素不能取地址、遍历顺序为什么故意是乱的、并发写为什么直接崩而不是悄悄错。按 Go 1.21+ 讲。

★★★★☆ · etwa 40 Min. · Geprüft wird: slice 传的是什么、扩容之后的共享关系、map 的几条约束、并发怎么办

Worauf diese Frage aufsetzt

Speicher und Objekte

Schon gemacht?

Melde dich an, um festzuhalten, dass du diese Aufgabe geübt hast — beim nächsten Mal siehst du, wann das war.

Notizen von Leuten, die das gemacht haben

Noch hat niemand etwas geschrieben. Erzähl nach dem Durchlauf, was dabei herauskam — welche Szene dich ins Stocken brachte, welche Schlussfolgerung du danach geändert hast.

Anmelden, um eine Notiz zu schreiben.

So funktioniert es

Diese Reihe bohrt nach, sie unterrichtet nicht. Sie ist ein Übungsinterview: Nichts mehr sagen zu können ist ein normaler Ausgang, und sie deckt dich nicht und beendet auch deine Sätze nicht, wenn du hängen bleibst. Wenn du ein Thema verstehen statt für ein Interview üben willst, geh zu Computersysteme, Datenbanken oder Algorithmen — dort wird geführt.

Wie eine Standardfrage vierzig Minuten füllt: die Fünf-Schichten-Leiter

  • Schicht 1 · Definition — was jeder Begriff bedeutet, worin die Unterschiede bestehen. Keine Antwort: nie gelernt.
  • Schicht 2 · Mechanismus — welche Struktur, welcher Schritt erzeugt diesen Unterschied konkret. Keine Antwort: nur die Schlussfolgerung auswendig gelernt.
  • Schicht 3 · Zahlen — wie groß ist der Unterschied? Wie viele Mikrosekunden, wie viele Male, wie viele I/Os. Keine Antwort: nie selbst angefasst.
  • Schicht 4 · Wahl — in einem konkreten Fall: was wählst du, zu welchem Preis, und wann ist diese Wahl falsch. Keine Antwort: du kannst es nicht anwenden.
  • Schicht 5 · Grenzen — unter welchen Bedingungen gilt alles gerade Gesagte nicht mehr. Keine Antwort: vollständig auswendig gelernt, aber nicht verstanden.

Die Messlatte: Schicht 4 besteht ein Interview, Schicht 5 heißt wirklich verstanden, und alles, was auf Schicht 1 stehen bleibt, gilt als auswendig gelernt.

Sechs Akte — der erste und der letzte gibt es nur hier

  • Im ersten Akt unterbricht sie nicht, kommentiert nicht und gibt keine Hinweise: Du lieferst deine vorhandene Version am Stück, und sie wird als Ausgangsaufnahme festgehalten. Das Schweigen ist Absicht — sie hört zu, sie korrigiert nur noch nicht.
  • Die vier mittleren Akte arbeiten sich die Leiter hinunter; das eigentliche Schlachtfeld ist der dritte: Mechanismus und Zahlen.
  • Der letzte Akt stellt sechzig Sekunden auf die Uhr und lässt dich alles noch einmal sagen, direkt neben deiner Eröffnungsversion — denn ein Interview verlangt nicht „ich habe es verstanden“, sondern einen Satz, den du laut aussprechen kannst.

So fängst du an

  1. Eine auswählen, öffnen, den Prompt kopieren.
  2. In eine brandneue Unterhaltung einfügen, nichts sagen und auf die erste Frage warten.
  3. Dann antworte wie im Interview: Liefere deine auswendige Version am Stück. Dass sie holprig ist, macht nichts — sie ist die Referenz, mit der am Ende verglichen wird.
  4. Danach wird nachgebohrt. Nichts mehr sagen zu können ist ein normaler Ausgang: Das hier ist kein Lernmaterial, sondern ein Übungsinterview.

Fünf Kommandos, die du jederzeit rufen kannst

  • 跳过 sofort zum nächsten Akt
  • 提示 gib mir einen Hinweis, nicht die Antwort
  • 直说吧 sag die vollständige Antwort
  • 重讲 spring zum letzten Akt, nimm die Sechzig-Sekunden-Version neu auf und vergleiche sie mit der Eröffnung
  • 复盘 spring zum Abschluss und gib die Auswertungskarte aus

Drei Fallen

  • Am Ende des kopierten Textes steht die Auflösung — lies sie nicht vorher. Eine ihrer Spalten heißt „Rezitations-Fingerabdrücke“: genau die Sätze, die dir mit hoher Wahrscheinlichkeit herausrutschen werden. Wer sie liest, hat nichts mehr zu üben.
  • Gib keine Adjektive, wo eine Zahl hingehört. „Viel schneller“, „kaum Overhead“ — da wird sofort nachgehakt und die Zahl verlangt. Eine Schlussfolgerung ohne Größenordnung gilt als auswendig gelernt.
  • Die letzten beiden Gruppen sind an eine Sprache gebunden: die Java-Gruppe, wenn du Java schreibst, die Go-Gruppe, wenn du Go schreibst. Sie sind keine Übersetzungen voneinander — jede wählt eigene Fragen —, du musst also nicht beide machen.

Nächste Woche ein Backend-Interview? Prozess und Thread, TCP und UDP, warum B+-Bäume, Isolationsstufen, die drei Arten, wie ein Cache kippt, und Idempotenz: die sechs häufigsten, fast ohne Überschneidung. Schon reihenweise zerlegt worden und auf der Suche nach den Lücken? Fang mit „von der URL bis zur fertigen Seite“ an: Sie legt alle schwachen Stellen auf einmal offen, und danach wählst du weiter.