我正在为一个简单的协议实现一个滑动窗口。我使用静态循环队列(数组)来实现窗口,因为它虽然效率很高
但我的一位朋友说,他已经在tcp中看到了滑动窗口的实现,它使用了一个链表。我不认为他见过,因为他不知道发行版中的网络代码在哪里
无论如何,
这是实现流动控制滑动窗口的更好方法
1.一个特殊的队列
2.链表
3.或别的什么。
任何建议或代码实施?
答案 0 :(得分:0)
更好是有点主观/取决于你的目标/如何使用数据结构 - 链接列表可能更好,以避免复制到阵列,但这是以复杂的跟踪缓冲区为代价的代价。列出项目。搜索链表更难/更慢,但如果您插入的不仅仅是检索,那么这是一个合理的权衡。