Wettbewerbsfähige ProgrammierungEinfach

Mindest-Swaps-Klammerausgleich

Detaillierte Anleitung und Python-Implementierung für das Problem „Minimum Swaps Brackets Balancing“.

Problemstellung

Einfach

Schreiben Sie eine Funktion minimum_swaps_balancing(s), die eine Zeichenfolge s aus eckigen Klammern [ und ] mit der gleichen Anzahl öffnender und schließender Klammern entgegennimmt und die Mindestanzahl an Vertauschungen benachbarter Zeichen zurückgibt, die zum Ausgleich der Zeichenfolge erforderlich sind.

Einschränkungen
  • 2 <= len(s) <= 10^5
  • s contains only '[' and ']'
  • Count of '[' equals count of ']'

Beispiele

Example 1
Input
minimum_swaps_balancing('[]][[]')
Output
1
Explanation

Swap index 2 and 3 -> '[][][]', which is balanced. (1 swap)

Example 2
Input
minimum_swaps_balancing(']]][[[')
Output
6
Explanation

We can swap adjacent brackets to make it balanced, requiring 6 swaps in total.

Need a Hint?
Erwägen Sie die Verwendung von Greedy-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.