achingbrain / achingbrain/uint8arraylist
Optimize for common usage with libp2p
- Vorherrschende Sprache
- TypeScript
- Sterne
- 11
- Forks
- 9
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
In many cases for the libp2p packages this lib is only used for the cases when N = 1, and the flow is usually "append" -> "sublist" -> "consume". Usually, also, the array only contains 1 element.
So
1). Append
Initialize the empty array in the constructur, and append 1 element to it
2). Sublist
Aquire a sublist which is in many cases just a shallow copy of this array
3). Consume
Make the array empty again
---
If this lib instead of utilize an ```linked list``` instead, we could in theory get overall better performance.
1). Append
On appending the first element, the head is set to the first element
2).
A shallow copy
3).
set the head and tail to be undefined
We could do even better, if we combine 2 and 3 into one method called "splice", we can cut the linked list at an appropriate place, which means that we will do much less operations.
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Bewertung
Dieses Issue wurde noch nicht bewertet.