Herausforderung: Zeichenhäufigkeit
Teil des Abschnitts Logik & Ablauf der PHP-Journey von Coddy — Lektion 66 von 68.
Aufgabe
EinfachSie erhalten eine einzige Eingabe: eine Textzeichenfolge.
Die Eingabe ist eine Zeichenfolge in diesem Format: hello world
Lesen Sie die Eingabezeichenfolge. Zählen Sie die Häufigkeit jedes Zeichens in der Zeichenfolge (unabhängig von Groß- und Kleinschreibung), wobei Leerzeichen ausgeschlossen werden. Speichern Sie die Zeichenhäufigkeiten in einem assoziativen Array, in dem die Schlüssel die Zeichen und die Werte deren Häufigkeiten sind.
Sortieren Sie das assoziative Array nach dem Schlüssel in aufsteigender alphabetischer Reihenfolge mit ksort().
Geben Sie jedes Zeichen und seine Häufigkeit im folgenden Format aus:
[character]: [count]
Geben Sie jedes Zeichen-Häufigkeits-Paar in einer separaten Zeile in alphabetischer Reihenfolge aus.
Eingabeformat:
- Eine einzelne Zeile, die eine Textzeichenfolge enthält (Beispiel:
hello world)
Erwartete Ausgabe: Jedes Zeichen und seine Häufigkeit, ausgegeben in einer separaten Zeile im Format: [character]: [count], alphabetisch nach Zeichen sortiert
Probier es selbst
<?php
// Eingabe lesen
$text = trim(fgets(STDIN));
// TODO: Schreibe deinen Code unten
// 1. Konvertiere den String in Kleinbuchstaben
// 2. Zähle die Zeichenhäufigkeit (ohne Leerzeichen)
// 3. Sortiere das Array nach Schlüssel mit ksort()
// 4. Gib jedes Zeichen und seine Häufigkeit aus
?>Alle Lektionen in Logik & Ablauf
1Fortgeschrittene Funktionen
Anonyme FunktionenClosures und 'use'Arrow FunctionsCallback-FunktionenVerwendung von 'call_user_func'VariablenfunktionenReferenzübergabeRekursive FunktionenRückblick: Funktions-Medley4Mehrdimensionale Arrays
Ein 2D-Array erstellenZugriff auf 2D-Array-ElementeÄndern von 2D-Array-ElementenIterieren mit verschachtelten Schleifen2D assoziative ArraysZusammenfassung: Einfache Gitter-Übung7Arbeiten mit Datum und Uhrzeit
Die 'date()'-FunktionUnix-Timestamps mit 'time()'Einführung in das DateTime-ObjektDateTime-Objekte formatierenDateTime-Objekte ändernZusammenfassung: Datumsberechnungen10Abschließende Herausforderungen
Herausforderung: Palindrom-PrüferHerausforderung: ZeichenhäufigkeitHerausforderung: Warenkorb-GesamtsummeHerausforderung: Filter für eindeutige Elemente2Fortgeschrittene Array-Manipulationen
Hinzufügen mit 'array_push'Entfernen mit 'array_pop'Hinzufügen mit 'array_unshift'Entfernen mit 'array_shift'Indizierte Arrays zusammenführenAssoziative Arrays zusammenführenExtrahieren mit 'array_slice'Werte mit 'in_array'Schlüssel mit 'array_search'Rückblick: Playlist-Übung3Arrays sortieren
Indizierte Arrays aufsteigend sortierenIndizierte Arrays absteigend sortierenAssoziative Arrays nach Wert sortierenAssoziative Arrays nach Schlüssel sortierenNatürliche SortierungBenutzerdefiniertes Sortieren mit 'usort'Recap: Leaderboard-Sortierung