Personnellement,
Je travaillerai cela sur une base de donnée.
Car si on suppose la table :
1 2 3 4 5
| create table tag (
`user` int(30) NOT NULL,
`ressource` int(30) NOT NULL,
`tag` varchar(256) NOT NULL,
) |
Ton Ni correspond pour l'utilisateur i à la requête suivante :
select count(*) from tag where user = %i%;
Et N(i,x) correspond pour l'utilisateur i à la requête suivante :
select count(*) from tag where user = %i% and ressource = %x%;
Et la liste des ressources taguées pour l'utilisateur i correspond à la requête suivante :
select DISTINCT ressource from tag where user = %i%
Sinon ton exemple est par définition faux.
Car N(i,x) est forcément inférieur à Ni car un sous ensemble de Ni. Donc inférieur à 1
Cordialement,
Patrick Kolodziejczyk.
Partager