Un HashSet encapsule les opérations qui permettent la comparaison d'éléments dans des collections. Les HashSets sont fréquemment utilisés pour déterminer les éléments uniques et qui se chevauchent dans une collection.
HashSet est basé sur HashMap. Si nous regardons la HashSet<E>mise en œuvre, tout est géré sous HashMap<E,Object>. <E>est utilisé comme clé de HashMap. Et nous savons que ce HashMapn'est pas sûr pour les threads. C'est pourquoi nous avons ConcurrentHashMapen Java. Sur cette base, je ne comprends pas pourquoi nous n'avons …
J'ai toujours aimé les arbres, c'est gentil O(n*log(n)) et la propreté d'entre eux. Cependant, chaque ingénieur logiciel que j'ai jamais connu m'a demandé pourquoi j'utiliserais a TreeSet. D'un arrière-plan CS, je ne pense pas que cela compte autant que vous utilisez, et je ne me soucie pas de jouer avec …
HashSet La structure de données C # HashSet a été introduite dans le .NET Framework 3.5. Une liste complète des membres implémentés se trouve sur la page HashSet MSDN . Où est-il utilisé? Pourquoi voudriez-vous l'utiliser?
Avec une liste, vous pouvez faire: list.AddRange(otherCollection); Il n'y a pas de méthode d'ajout de plage dans un HashSet . Quelle est la meilleure façon d'ajouter une autre collection à un HashSet?
Comment puis-je parcourir un Set/ HashSetsans les éléments suivants? Iterator iter = set.iterator(); while (iter.hasNext()) { System.out.println(iter.next()); }
Hormis le fait que cela HashSetn'autorise pas les valeurs en double, quelle est la différence entre HashMapet HashSet? Je veux dire en termes de mise en œuvre? C'est un peu vague car les deux utilisent des tables de hachage pour stocker des valeurs.
Je voulais stocker certains emplacements de pixels sans autoriser les doublons, donc la première chose qui me vient à l'esprit est HashSet<Point>ou des classes similaires. Cependant, cela semble être très lent par rapport à quelque chose comme HashSet<string>. Par exemple, ce code: HashSet<Point> points = new HashSet<Point>(); using (Bitmap img …
Pouvez-vous expliquer quelle est la différence entre HashSet<T>et List<T>dans .NET? Peut-être pouvez-vous expliquer par un exemple dans quels cas HashSet<T>il faut préférer List<T>?
Quelle est la différence entre eux? je le sais Un LinkedHashSet est une version ordonnée de HashSet qui maintient une liste doublement liée à travers tous les éléments. Utilisez cette classe au lieu de HashSet lorsque vous vous souciez de l'ordre d'itération. Lorsque vous parcourez un HashSet, l'ordre est imprévisible, …
Veuillez considérer le morceau de code ci-dessous: HashSet hs = new HashSet(); hs.add("hi"); -- (1) hs.add("hi"); -- (2) hs.size()donnera 1 car HashSetn'autorise pas les doublons, donc un seul élément sera stocké. Je veux savoir si nous ajoutons l'élément dupliqué, alors remplace-t-il l'élément précédent ou ne l'ajoute tout simplement pas? Aussi, …
J'explore le HashSet<T>type, mais je ne comprends pas où il se situe dans les collections. Peut-on l'utiliser pour remplacer un List<T>? J'imagine que les performances de a HashSet<T>sont meilleures, mais je ne voyais pas l'accès individuel à ses éléments. Est-ce uniquement pour le dénombrement?
J'ai une classe qui est IComparable: public class a : IComparable { public int Id { get; set; } public string Name { get; set; } public a(int id) { this.Id = id; } public int CompareTo(object obj) { return this.Id.CompareTo(((a)obj).Id); } } Lorsque j'ajoute une liste d'objets de cette …
HashSet<T> t = new HashSet<T>(); // add 10 million items Dictionary<K, V> t = new Dictionary<K, V>(); // add 10 million items. Quelle .Containsméthode reviendra le plus rapidement? Juste pour clarifier, mon exigence est que j'ai 10 millions d'objets (enfin, des chaînes vraiment) dont j'ai besoin pour vérifier s'ils existent …
Existe-t-il une collection en C # qui ne vous permettra pas d'ajouter des éléments en double? Par exemple, avec la classe idiote de public class Customer { public string FirstName { get; set; } public string LastName { get; set; } public string Address { get; set; } public override …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.