Menu
Coddy logo textTech

Ćwiczenie #3

Lekcja 12 z 14 w kursie Tablice haszujące – Struktury danych, część 4 w Coddy.

challenge icon

Wyzwanie

Łatwy

Napisz funkcję isAnagram, która otrzymuje dwa ciągi znaków s1 i s2 i zwraca informację, czy są one anagramami: zawierają ten sam multizbiór znaków w dowolnej kolejności.

Porównanie uwzględnia wielkość liter. Ciągi znaków o różnej długości nigdy nie są anagramami.

Musisz użyć klasy HashMap udostępnionej w hashmap.<ext> — nie używaj wbudowanych w język konstrukcji, takich jak zbiory, słowniki ani mapy.

Spróbuj swoich sił

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
#include "solution.h"

int main() {
    char s1[8192];
    char s2[8192];
    if (!fgets(s1, sizeof(s1), stdin)) s1[0] = '\0';
    if (!fgets(s2, sizeof(s2), stdin)) s2[0] = '\0';
    s1[strcspn(s1, "\r\n")] = '\0';
    s2[strcspn(s2, "\r\n")] = '\0';
    bool r = isAnagram(s1, s2);
    printf("%s\n", r ? "true" : "false");
    return 0;
}

Wszystkie lekcje w sekcji Tablice haszujące – Struktury danych, część 4

Poćwicz samodzielnie: Kompilator C online