Menu
  • HOME
  • TAGS

Creating SortedDictionary with LinkedList value

c#,sorteddictionary

You need to make sure the key exists first. If it doesn't, then create it and assign a new list as value. Then you can just add the current item to the LinkedList. For example: var UnitPriceIndex = new SortedDictionary<double, LinkedList<OrderItem>>(); foreach (OrderItem item in Data) { // Make sure...

Fast way to find the first unused key in a SortedDictionary?

c#,.net,key,sorteddictionary

So, If I understand you correctly, the keys can be anywhere from 0 to int.MaxValue. In that case, you have to find the first "hole" in the sequence of keys. This should do the job efficiently: public static int GetFirstUnusedKey<TValue>(SortedDictionary<int, TValue> dict) { if (dict.Comparer != Comparer<int>.Default) throw new NotSupportedException("Unsupported...

SortedDictionary ArgumentException: “Æ” and “AE” considered the same keys

c#,.net,dictionary,unique,sorteddictionary

It's because of the culture. Try new SortedDictionary(StringComparer.Ordinal), for example. The reason Dictionary behaves differently is that it uses EqualityComparer<TKey>.Default while SortedDictionary uses Comparer<TKey>.Default....

Iterate over a changing SortedDictionary

vb.net,sorteddictionary

In your example code, you need to initialize the array to the size of pRowDatas: Dim TempR(0 To pRowDatas.Count-1) As KeyValuePair(Of Integer, RowData) pRowDatas.CopyTo(TempR, 0) There's also a ToArray extension method that you could use: Dim TempR As KeyValuePair(Of Integer, RowData) = pRowDatas.ToArray() Neither of these are inherently thread-safe. The...