Need a collection of unique elements (like C++ std::set).

Cooler kulkin at hotbox.ru
Thu Jan 2 03:29:40 PST 2014


On Thursday, 2 January 2014 at 11:20:32 UTC, Jacob Carlborg wrote:
> On 2014-01-01 22:54, Cooler wrote:
>> Example in C++:
>>   set<int> uniqueInts;
>>   assert(uniqueInts.count(99) == 0);
>>   uniqueInts.insert(99);
>>   assert(uniqueInts.count(99) == 1);
>>   uniqueInts.erase(99);
>>   assert(uniqueInts.count(99) == 0);
>>
>> Which it will be analogue solution in D?
>>
>> I need a collection that can hold number of items, and can 
>> tell me
>> weather is an item in the collection or not. I found that 
>> RedBlackTree
>> can help me. But RedBlackTree uses O(log(n)) time for 
>> insert/remove
>> operations. On the other hand we have built-in associative 
>> arrays with
>> hashed keys. But associative arrays requires pairs of (key, 
>> value),
>> which is quite wasting in my case.
>> May be it will be convenient to allow void[key] built-in 
>> collections?
>> Any suggestion?
>
> Tango contains collection, among the a hash set:
>
> http://siegelord.github.io/Tango-D2/tango.util.container.HashSet.html
> https://github.com/SiegeLord/Tango-D2

Why do not include this to Phobos?


More information about the Digitalmars-d mailing list