Skip to content

Commit 0fb3e00

Browse files
committed
Add another comparison aspect
1 parent 906f25b commit 0fb3e00

File tree

1 file changed

+16
-15
lines changed

1 file changed

+16
-15
lines changed

README.md

Lines changed: 16 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -145,21 +145,22 @@ dotnet run -c=Release --project=Benchmarking
145145
```
146146

147147
### Quick performance comparison between relevant collection types
148-
| Task | List | DictionaryList | Dictionary | SortedDictionary |
149-
|-------------------------------------|----------|----------------|------------|------------------|
150-
| Append Many Items (speed) | 👍 | 👌 | 👎👎 | 👎👎👎 |
151-
| Append Many Items (memory) | 👍 | 👌 | 👎👎 | 👎 |
152-
| Full Iteration (speed) | 👍 | 👎 | 👌 | 👎👎 |
153-
| Full Iteration (memory) | 👍 (0) | 👌 | 👍 (0) | 👌 |
154-
| Read Many Items (speed) | 👍 | 👌 | 👎 | 👎👎 |
155-
| Read Many Items (memory) | 👍 (0) | 👍 (0) | 👍 (0) | 👍 (0) |
156-
| Remove Many Items In-place (speed) | 👎👎👎 | 👌 | 👍 | 👌 |
157-
| Remove Many Items In-place (memory) | 👍 (0) | 👌 | 👍 (0) | 👌 |
158-
| Remove Many Items w/ LINQ (speed) | 👍 | 👌 | 👎👎 | 👎👎 |
159-
| Remove Many Items w/ LINQ (memory) | 👍 | 👌 | 👎 | 👎👎 |
160-
| Emit Key/Index During `foreach` | 🤷 ([1]) | ✔️ | ✔️ | ✔️ |
161-
| Replace Items During `foreach` | 🤷 ([1]) | ✔️ | ✔️ | ❌ if key exists |
162-
| Remove Items During `foreach` || ✔️ | ✔️ ||
148+
| Task | List | DictionaryList | Dictionary | SortedDictionary |
149+
|-------------------------------------|----------|----------------|---------------|------------------|
150+
| Append Many Items (speed) | 👍 | 👌 | 👎👎 | 👎👎👎 |
151+
| Append Many Items (memory) | 👍 | 👌 | 👎👎 | 👎 |
152+
| Full Iteration (speed) | 👍 | 👎 | 👌 | 👎👎 |
153+
| Full Iteration (memory) | 👍 (0) | 👌 | 👍 (0) | 👌 |
154+
| Read Many Items (speed) | 👍 | 👌 | 👎 | 👎👎 |
155+
| Read Many Items (memory) | 👍 (0) | 👍 (0) | 👍 (0) | 👍 (0) |
156+
| Remove Many Items In-place (speed) | 👎👎👎 | 👌 | 👍 | 👌 |
157+
| Remove Many Items In-place (memory) | 👍 (0) | 👌 | 👍 (0) | 👌 |
158+
| Remove Many Items w/ LINQ (speed) | 👍 | 👌 | 👎👎 | 👎👎 |
159+
| Remove Many Items w/ LINQ (memory) | 👍 | 👌 | 👎 | 👎👎 |
160+
| Add Items During `foreach` ||| ❌ if new hash ||
161+
| Emit Key/Index During `foreach` | 🤷 ([1]) | ✔️ | ✔️ | ✔️ |
162+
| Replace Items During `foreach` | 🤷 ([1]) | ✔️ | ✔️ | ❌ if key exists |
163+
| Remove Items During `foreach` || ✔️ | ✔️ ||
163164

164165
You may see that `DictionaryList<T>` is an all-rounded, midway solution between a `List<T>` and a `Dictionary<TKey,TValue>`.
165166

0 commit comments

Comments
 (0)