Heim >Backend-Entwicklung >PHP-Tutorial >K-te eindeutige Zeichenfolge in einem Array

K-te eindeutige Zeichenfolge in einem Array

王林
王林Original
2024-08-06 09:25:301017Durchsuche

Kth Distinct String in an Array

2053. K-te eindeutige Zeichenfolge in einem Array

Einfach

Eine eindeutige Zeichenfolge ist eine Zeichenfolge, die nur einmal in einem Array vorhanden ist.

Gegeben sei ein Array von Zeichenfolgen arr und eine Ganzzahl k, gib die kte eindeutige Zeichenfolge zurück, die in arr vorhanden ist. Wenn es weniger als k unterschiedliche Zeichenfolgen gibt, wird eine leere Zeichenfolge "" zurückgegeben.

Beachten Sie, dass die Zeichenfolgen in der Reihenfolge berücksichtigt werden, in der sie im Array erscheinen.

Beispiel 1:

  • Eingabe: arr = ["d", "b", "c", "b", "c", "a"], k = 2
  • Ausgabe: „a“
  • Erklärung: Die einzigen unterschiedlichen Zeichenfolgen in arr sind „d“ und „a“. „d“ erscheint am 1.st, es handelt sich also um die 1.st eindeutige Zeichenfolge. „a“ erscheint an zweiter Stelle, es handelt sich also um die zweite eindeutige Zeichenfolge. Da k == 2, wird „a“ zurückgegeben.
  • Beispiel 2:

Eingabe:
    arr = ["aaa", "aa", "a"], k = 1
  • Ausgabe:
  • „aaa“
  • Erklärung:
  • Alle Zeichenfolgen in arr sind eindeutig, daher wird die erste Zeichenfolge „aaa“ zurückgegeben.
  • Beispiel 3:

Eingabe:
    arr = ["a", "b", "a"], k = 3
  • Ausgabe:
  • ""
  • Erklärung:
  • Die einzige eindeutige Zeichenfolge ist „b“. Da es weniger als drei unterschiedliche Zeichenfolgen gibt, geben wir eine leere Zeichenfolge „“ zurück.
  • Einschränkungen:

1 <= k <= arr.length <= 1000

    1 <= arr[i].length <= 5
  • arr[i] besteht aus englischen Kleinbuchstaben.
  • Hinweis:

Versuchen Sie, die Zeichenfolgen zuzuordnen, um zu überprüfen, ob sie eindeutig sind oder nicht.

  1. Lösung:

Um dieses Problem zu lösen, können wir die folgenden Schritte ausführen:

Erstellen Sie eine Häufigkeitskarte (assoziatives Array), um das Vorkommen jeder Zeichenfolge im angegebenen Array zu zählen.

    Durchlaufen Sie das Array, um die unterschiedlichen Zeichenfolgen (Zeichenfolgen, die nur einmal vorkommen) in der Reihenfolge zu sammeln, in der sie erscheinen.
  1. Überprüfen Sie, ob die Anzahl der unterschiedlichen Zeichenfolgen mindestens k beträgt. Wenn ja, geben Sie die k-te eindeutige Zeichenfolge zurück. Andernfalls wird eine leere Zeichenfolge zurückgegeben.
  2. Lassen Sie uns diese Lösung in PHP implementieren:
  3. 2053. K-te eindeutige Zeichenfolge in einem Array


Erläuterung:



Frequenzkarte
    : Wir erstellen zunächst eine Frequenzkarte, um zu zählen, wie oft jede Zeichenfolge im Array vorkommt.
  1. ["d", "b", "c", "b", "c", "a"] ergibt ["d" => 1, "b" => 2, "c" => 2, "a" => 1]
    Eindeutige Zeichenfolgen sammeln
  2. : Wir durchlaufen das Array erneut und sammeln Zeichenfolgen, die in der Häufigkeitskarte eine Anzahl von 1 haben.
  3. Für ["d", "b", "c", "b", "c", "a"] erhalten wir ["d", "a"].
    Ergebnis zurückgeben
  4. : Wir prüfen, ob es mindestens k unterschiedliche Zeichenfolgen gibt und geben die k-te Zeichenfolge zurück, falls vorhanden, andernfalls geben wir eine leere Zeichenfolge zurück.
  5. Der bereitgestellte Code behandelt das Problem effizient innerhalb der gegebenen Einschränkungen.

Kontaktlinks

Wenn Sie diese Serie hilfreich fanden, denken Sie bitte darüber nach, dem Repository

einen Stern auf GitHub zu geben oder den Beitrag in Ihren bevorzugten sozialen Netzwerken zu teilen? Ihre Unterstützung würde mir sehr viel bedeuten!

Wenn Sie weitere hilfreiche Inhalte wie diesen wünschen, folgen Sie mir gerne:

LinkedIn
  • GitHub

Das obige ist der detaillierte Inhalt vonK-te eindeutige Zeichenfolge in einem Array. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn