Top 150-InterviewEinfach

Zeichenfolgen kodieren und dekodieren

Detaillierte Anleitung und Python-Implementierung für das Problem „Encode and Decode Strings“.

Problemstellung

Einfach

Entwerfen Sie einen Algorithmus, um eine Liste von Zeichenfolgen in eine einzelne Zeichenfolge zu kodieren. Die codierte Zeichenfolge wird dann wieder in die ursprüngliche Zeichenfolgenliste dekodiert.

Implementieren Sie zwei Funktionen:

- encode(strs: List[str]) -> str – Codiert eine Liste von Zeichenfolgen in eine einzelne Zeichenfolge.

- decode(s: str) -> List[str] – Dekodiert eine einzelne Zeichenfolge zurück in die ursprüngliche Zeichenfolgenliste.

Die codierte Zeichenfolge sollte alle möglichen Zeichen in den Eingabezeichenfolgen verarbeiten können, einschließlich Sonderzeichen und Leerzeichenfolgen.

Einschränkungen
  • 0 <= len(strs) <= 200
  • 0 <= len(strs[i]) <= 200
  • strs[i] can contain any possible characters (0-255)

Beispiele

Example 1
Input
strs = ["hello", "world"]
Output
["hello", "world"]
Explanation

The list is encoded into a single string and then decoded back to the original list ["hello", "world"].

Example 2
Input
strs = [""]
Output
[""]
Explanation

A list containing a single empty string is encoded and decoded correctly.

Example 3
Input
strs = ["we", "say", ":", "yes"]
Output
["we", "say", ":", "yes"]
Explanation

Special characters like ":" are handled correctly during encoding and decoding.

Need a Hint?
Erwägen Sie die Verwendung von Arrays und Hashing-spezifischen Datenstrukturen wie Sets oder Heaps.
Edge Cases to Watch
  • Leere Eingabestrukturen
  • Einzelelementeingaben
  • Große numerische Grenzen

Bereit zur Lösung?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Im Editor öffnen
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Empfohlene Python-Ressourcen

Erweitern Sie Ihr Wissen mit zugehörigen interaktiven Tutorials, Spickzetteln und Codevergleichen.