Esercitazione #3
Lezione 12 di 14 del corso Tabelle hash - Serie sulle strutture dati #4 di Coddy.
Sfida
FacileScrivi una funzione isAnagram che riceve due stringhe s1 e s2 e restituisce se sono anagrammi: contengono lo stesso multinsieme di caratteri, in qualsiasi ordine.
Il confronto distingue tra maiuscole e minuscole. Le stringhe di lunghezza diversa non sono mai anagrammi.
Devi usare la classe HashMap fornita in hashmap.<ext> — non usare strutture integrate nel linguaggio, come set, dict o map.
Provalo tu
#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;
}
Tutte le lezioni di Tabelle hash - Serie sulle strutture dati #4
Esercitati da solo: Compilatore C online