Défi : Gestion des Intérêts des Utilisateurs
Imaginez que vous développez une fonctionnalité pour une application qui suit les centres d'intérêt des utilisateurs. Les informations concernant chaque utilisateur sont stockées dans Redis sous forme d'un ensemble. Chaque utilisateur possède une collection unique de centres d'intérêt.
-
Ajouter les centres d'intérêt de chaque utilisateur à leurs ensembles respectifs :
user:1:interests: "music", "movies", "sports";user:2:interests: "sports", "travel", "reading";user:3:interests: "reading", "music", "cooking".
-
Vérifier si Utilisateur 1 s'intéresse à "travel" et si Utilisateur 2 s'intéresse à "sports" ;
-
Identifier les centres d'intérêt communs de Utilisateur 1 et Utilisateur 2 ;
-
Trouver les centres d'intérêt de Utilisateur 1 qui ne sont pas partagés par Utilisateur 2 ;
-
Créer une liste de tous les centres d'intérêt uniques partagés par Utilisateur 1, Utilisateur 2 et Utilisateur 3 ;
-
Utilisateur 3 n'est plus intéressé par "music". Supprimer ce centre d'intérêt de son ensemble ;
-
Afficher la liste des centres d'intérêt de chaque utilisateur après avoir effectué ces opérations.
1. Ajouter les centres d'intérêt de chaque utilisateur à leurs ensembles respectifs :
SADD user:1:interests "music" "movies" "sports"
SADD user:2:interests "sports" "travel" "reading"
SADD user:3:interests "reading" "music" "cooking"
2. Vérifier si un centre d'intérêt spécifique existe dans l'ensemble d'un utilisateur :
SISMEMBER user:1:interests "travel" # result: 0 (User 1 is not interested)
SISMEMBER user:2:interests "sports" # result: 1 (User 2 is interested)
3. Récupérer les centres d'intérêt partagés entre deux utilisateurs :
SINTER user:1:interests user:2:interests # result: ["sports"]
4. Obtenir les centres d'intérêt d'un utilisateur qui ne sont pas partagés par un autre :
SDIFF user:1:interests user:2:interests # result: ["music", "movies"]
5. Créer une liste complète des centres d'intérêt uniques de tous les utilisateurs :
SUNION user:1:interests user:2:interests user:3:interests # result: ["music", "movies", "sports", "travel", "reading", "cooking"]
6. Supprimer un centre d'intérêt de l'ensemble d'un utilisateur :
SREM user:3:interests "music"
7. Récupérer les ensembles de centres d'intérêt mis à jour pour chaque utilisateur :
SMEMBERS user:1:interests # result: ["music", "movies", "sports"]
SMEMBERS user:2:interests # result: ["sports", "travel", "reading"]
SMEMBERS user:3:interests # result: ["reading", "cooking"]
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion
Awesome!
Completion rate improved to 3.33
Défi : Gestion des Intérêts des Utilisateurs
Glissez pour afficher le menu
Imaginez que vous développez une fonctionnalité pour une application qui suit les centres d'intérêt des utilisateurs. Les informations concernant chaque utilisateur sont stockées dans Redis sous forme d'un ensemble. Chaque utilisateur possède une collection unique de centres d'intérêt.
-
Ajouter les centres d'intérêt de chaque utilisateur à leurs ensembles respectifs :
user:1:interests: "music", "movies", "sports";user:2:interests: "sports", "travel", "reading";user:3:interests: "reading", "music", "cooking".
-
Vérifier si Utilisateur 1 s'intéresse à "travel" et si Utilisateur 2 s'intéresse à "sports" ;
-
Identifier les centres d'intérêt communs de Utilisateur 1 et Utilisateur 2 ;
-
Trouver les centres d'intérêt de Utilisateur 1 qui ne sont pas partagés par Utilisateur 2 ;
-
Créer une liste de tous les centres d'intérêt uniques partagés par Utilisateur 1, Utilisateur 2 et Utilisateur 3 ;
-
Utilisateur 3 n'est plus intéressé par "music". Supprimer ce centre d'intérêt de son ensemble ;
-
Afficher la liste des centres d'intérêt de chaque utilisateur après avoir effectué ces opérations.
1. Ajouter les centres d'intérêt de chaque utilisateur à leurs ensembles respectifs :
SADD user:1:interests "music" "movies" "sports"
SADD user:2:interests "sports" "travel" "reading"
SADD user:3:interests "reading" "music" "cooking"
2. Vérifier si un centre d'intérêt spécifique existe dans l'ensemble d'un utilisateur :
SISMEMBER user:1:interests "travel" # result: 0 (User 1 is not interested)
SISMEMBER user:2:interests "sports" # result: 1 (User 2 is interested)
3. Récupérer les centres d'intérêt partagés entre deux utilisateurs :
SINTER user:1:interests user:2:interests # result: ["sports"]
4. Obtenir les centres d'intérêt d'un utilisateur qui ne sont pas partagés par un autre :
SDIFF user:1:interests user:2:interests # result: ["music", "movies"]
5. Créer une liste complète des centres d'intérêt uniques de tous les utilisateurs :
SUNION user:1:interests user:2:interests user:3:interests # result: ["music", "movies", "sports", "travel", "reading", "cooking"]
6. Supprimer un centre d'intérêt de l'ensemble d'un utilisateur :
SREM user:3:interests "music"
7. Récupérer les ensembles de centres d'intérêt mis à jour pour chaque utilisateur :
SMEMBERS user:1:interests # result: ["music", "movies", "sports"]
SMEMBERS user:2:interests # result: ["sports", "travel", "reading"]
SMEMBERS user:3:interests # result: ["reading", "cooking"]
Merci pour vos commentaires !