«hashset» etiketlenmiş sorular

Bir HashSet, koleksiyonlardaki öğelerin karşılaştırılmasına olanak tanıyan işlemleri kapsüller. HashSets, bir koleksiyondaki örtüşen ve benzersiz öğeleri belirlemek için sıklıkla kullanılır.

9
ConcurrentHashMap'e karşı neden ConcurrentHashSet yoktur?
HashSet, HashMap'i temel alır. HashSet<E>Uygulamaya bakarsak , her şey altında yönetilir HashMap<E,Object>. <E>anahtar olarak kullanılır HashMap. Ve bunun HashMapiş parçacığı için güvenli olmadığını biliyoruz . Bu yüzden ConcurrentHashMapJava'da var. Buna dayanarak, neden dayanacak bir ConcurrentHashSet'e sahip olmadığımız konusunda kafam karıştı ?ConcurrentHashMap Kaçırdığım başka bir şey var mı? SetÇok iş parçacıklı …

13
Hashset vs Treeset
Ağaçları hep sevdim, o kadar güzel O(n*log(n))ve düzenli. Ancak, tanıdığım her yazılım mühendisi bana a TreeSet. CS geçmişinden, kullandığınız kadar önemli olduğunu düşünmüyorum ve hash işlevleri ve kovalarla uğraşmak umurumda değil (durumunda Java). Hangi durumlarda HashSetover a kullanmalıyım TreeSet?
496 java  hashset  treeset 

4
Tanımla: HashSet nedir?
HashSet C # HashSet veri yapısı .NET Framework 3.5'te kullanılmaya başlandı. Uygulanan üyelerin tam bir listesini HashSet MSDN sayfasında bulabilirsiniz. Nerede kullanılır? Neden kullanmak istersiniz?
420 c#  hashset 




2
HashSet <Point> neden HashSet <string> 'den daha yavaş?
Bazı piksel konumlarını kopyalara izin vermeden saklamak istedim, bu yüzden akla ilk gelen şey HashSet&lt;Point&gt;benzer sınıflar. Ancak bu gibi bir şeye kıyasla çok yavaş görünüyor HashSet&lt;string&gt;. Örneğin, bu kod: HashSet&lt;Point&gt; points = new HashSet&lt;Point&gt;(); using (Bitmap img = new Bitmap(1000, 1000)) { for (int x = 0; x &lt; img.Width; …


10
HashSet ve LinkedHashSet karşılaştırması
Onların arasındaki fark ne? bunu biliyorum LinkedHashSet, HashSet'in sıralı bir sürümüdür ve tüm öğeler arasında çift bağlantılı bir Liste sağlar. Yineleme sırasını önemsediğinizde HashSet yerine bu sınıfı kullanın. Bir HashSet üzerinden yinelediğinizde, sipariş tahmin edilemezken, LinkedHashSet öğeleri yerleştirildikleri sırayla yinelemenize izin verir. Ancak LinkedHashSet'in kaynak kodunda sadece HashSet'in çağrı yapıcıları …

8
Bir HashSet / HashMap öğesine yinelenen bir değer eklemek önceki değerin yerine geçiyor mu?
Lütfen aşağıdaki kod parçasını düşünün: HashSet hs = new HashSet(); hs.add("hi"); -- (1) hs.add("hi"); -- (2) hs.size()HashSetyinelemelere izin vermediği için 1 verir, böylece yalnızca bir öğe depolanır. Yinelenen öğeyi ekleyip eklemediğimizi bilmek istiyorum, o zaman önceki öğenin yerini mi alıyor yoksa basitçe eklemiyor mu? Ayrıca, HashMapaynı dava için ne olacak …

11
HashSet <T> türünü ne zaman kullanmalıyım?
HashSet&lt;T&gt;Türü keşfediyorum ama koleksiyonlarda nerede durduğunu anlamıyorum. Biri onu değiştirmek için kullanabilir List&lt;T&gt;mi? A'nın performansının HashSet&lt;T&gt;daha iyi olacağını hayal ediyorum , ancak öğelerine bireysel erişimi göremedim. Sadece sayım için mi?

4
HashSet, eşitlik için öğeleri nasıl karşılaştırır?
Bir sınıfım var 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); } } Bir hash setine bu sınıfın bir nesnesinin listesini eklediğimde: …
128 c#  hashset 


7
.NET'te yalnızca benzersiz öğelere izin veren koleksiyon?
C # içinde, ona yinelenen öğeler eklemenize izin vermeyecek bir koleksiyon var mı? Örneğin, aptal sınıfıyla public class Customer { public string FirstName { get; set; } public string LastName { get; set; } public string Address { get; set; } public override int GetHashCode() { return (FirstName + LastName …
104 c#  set  hashset 

5
HashSet <T> ile Sözlük <K, V> arasında bir öğe olup olmadığını bulmak için arama süresi
HashSet&lt;T&gt; t = new HashSet&lt;T&gt;(); // add 10 million items Dictionary&lt;K, V&gt; t = new Dictionary&lt;K, V&gt;(); // add 10 million items. Kimin .Contains yöntemi daha hızlı dönecek? Sadece açıklığa kavuşturmak için, benim ihtiyacım, veri yapısında var olup olmadıklarını kontrol etmem gereken 10 milyon nesneye (aslında, dizgiler) sahip olmaktır. ASLA …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.