cyphal.rs icon indicating copy to clipboard operation
cyphal.rs copied to clipboard

Temporal complexity specification and AVL trees

Open pavel-kirienko opened this issue 4 years ago • 0 comments

I am currently refactoring libcanard to get rid of linear-complexity linked lists in favor of logarithmic-complexity AVL trees and it occurred to me that this library would benefit from adopting logarithmic pipelines from the start. There seem to be some decent-looking implementations of fast containers in Rust although I'm not sure if there is one that suits this project. I couldn't find one in C so I had to craft one myself, however, I don't expect this specific implementation to be easily portable to Rust as-is due to lifetime issues.

Related discussion:

  • https://github.com/UAVCAN/libuavcan/issues/185
  • https://github.com/UAVCAN/libuavcan/issues/189

pavel-kirienko avatar Oct 13 '21 09:10 pavel-kirienko