«data-structures» etiketlenmiş sorular

Veri yapısı, verileri, belirli verilerin özelliklerinin verimli bir şekilde sorgulanmasına ve / veya güncellenmesine izin verecek şekilde organize etmenin bir yoludur.

14
Java'da HashMap'ten anahtarları alma
Java böyle bir Hashmap var: private Map<String, Integer> team1 = new HashMap<String, Integer>(); Sonra şöyle dolduruyorum: team1.put("United", 5); Anahtarları nasıl alabilirim? Gibi bir şey: team1.getKey()"United" dönmek için.


13
API tasarımında “çok fazla parametre” sorunu nasıl önlenir?
Bu API işlevi var: public ResultEnum DoSomeAction(string a, string b, DateTime c, OtherEnum d, string e, string f, out Guid code) Sevmiyorum. Çünkü parametre sırası gereksiz yere önemli hale gelir. Yeni alanlar eklemek zorlaşıyor. Nelerin geçtiğini görmek daha zor. Alt fonksiyonlardaki tüm parametreleri geçirmenin başka bir yükünü oluşturduğu için yöntemi …

14
“Donmuş bir diksiyon” ne olurdu?
Dondurulmuş bir set bir frozensettir. Dondurulmuş bir liste bir demet olabilir. Donmuş bir diksiyon ne olurdu? Değişmez, yıkanabilir bir diksiyon. Sanırım böyle bir şey olabilir collections.namedtuple, ama bu daha çok donmuş anahtarlar dikte (yarı donmuş dikt) gibi. Öyle değil mi? Bir "frozendict" olması gereken, donmuş bir sözlük olmalıdır keys, values, …

7
Neden Yığın Üzerinde Deque kullanmalıyım?
StackKullanım durumum için bir veri yapısına ihtiyacım var . Öğeleri veri yapısına zorlayabilmeliyim ve yalnızca Yığındaki son öğeyi almak istiyorum. Yığın için javadoc diyor: Deque arabirimi ve bu sınıfa göre kullanılması gereken uygulamaları tarafından daha eksiksiz ve tutarlı bir LIFO yığın operasyonları seti sağlanır. Örneğin: Deque<Integer> stack = new ArrayDeque<>(); …


5
Set () nasıl uygulanır?
İnsanların setpython'daki nesnelerin O (1) üyelik kontrolüne sahip olduğunu söylediğini gördüm . Buna izin vermek için dahili olarak nasıl uygulanırlar? Ne tür bir veri yapısı kullanıyor? Bu uygulamanın başka etkileri nelerdir? Buradaki her cevap gerçekten aydınlatıcıydı, ama sadece bir tane kabul edebilirim, bu yüzden orijinal soruma en yakın cevabı vereceğim. …

4
Gerçekten bir Fibonacci-Yığını etkili bir şekilde uygulayan var mı?
Herhangi biriniz hiç Fibonacci-Heap uyguladınız mı? Birkaç yıl önce yaptım, ancak dizi tabanlı BinHeaps kullanmaktan daha yavaş birkaç büyüklük emriydi. O zamanlar bunu araştırmanın iddia ettiği kadar iyi olmadığı konusunda değerli bir ders olarak düşündüm. Bununla birlikte, birçok araştırma makalesi, bir Fibonacci-Heap kullanmaya dayanan algoritmalarının çalışma sürelerini iddia etmektedir. Hiç …

11
Neden ilk kapasiteye sahip bir ArrayList başlatmalıyım?
Her zamanki kurucusu ArrayList: ArrayList<?> list = new ArrayList<>(); Ancak başlangıç ​​kapasitesi için bir parametreye sahip aşırı yüklenmiş bir kurucu da var: ArrayList<?> list = new ArrayList<>(20); ArrayListİstediğimiz gibi ekleyebildiğimizde, başlangıç ​​kapasitesine sahip bir an oluşturmak neden yararlıdır ?

12
Neden unordered_set yerine set kullanır?
C ++ 0x unordered_sethangi boostve diğer birçok yerde kullanılabilir tanıtıyor . Anladığım şey, arama karmaşıklığına unordered_setsahip karma tablo O(1). Öte yandan, arama karmaşıklığı setolan bir ağaçtan başka bir şey değildir log(n). Neden yeryüzünde herkes kullanmak istiyorsunuz setyerine unordered_set? yani setartık bir ihtiyaç var mı?

22
İki Kuyruk Kullanarak Yığını Uygulama
Benzer bir soru daha önce orada sorulmuştu , ancak buradaki soru bunun tersi, yığın olarak iki kuyruk kullanıyor. Soru... Standart işlemleri ile iki sıraları göz önüne alındığında ( enqueue, dequeue, isempty, size), standart işlemler ile yığın aleti ( pop, push, isempty, size). Çözümün iki sürümü olmalıdır . Sürüm A : …


4
IGrouping'de "Value" özelliğini edinin
Benim gibi bir veri yapım var public DespatchGroup(DateTime despatchDate, List<Products> products); Ve yapmaya çalışıyorum ... var list = new List<DespatchGroup>(); foreach (var group in dc.GetDespatchedProducts().GroupBy(i => i.DespatchDate)) { // group.Values is not correct... how do I write this? list.Add(new DespatchGroup(group.Key, group.Values); } Açıkçası anlamadım IGroupingçünkü aslında grup içindeki veri kayıtlarına …


12
İkili arama ağaçlarının tanımında yinelenen anahtarlara izin veriliyor mu?
İkili bir arama ağacının tanımını bulmaya çalışıyorum ve her yerde farklı tanımlar bulmaya devam ediyorum. Bazıları, herhangi bir alt ağaç için sol alt anahtarın kökten küçük veya ona eşit olduğunu söylüyor. Bazıları, herhangi bir alt ağaç için doğru alt anahtarın kökten büyük veya ona eşit olduğunu söyler. Ve eski kolej …

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.