数据结构与算法的应用场景

mac2024-03-10  27

参考 博文01:https://www.cnblogs.com/muyangshaonian/p/9650554.html 博文02:https://www.cnblogs.com/lz3018/p/5932198.html

博文01

常用数据结构的应用场景

1、单向链表

单向链表适用于只从一端单向访问的场合,这种场合一般来说:

(1)、删除时,只适合删除第一个元素;

(2)、添加时,只直接添加到最后一个元素的后面或者添加到第一个元素的前面;

(3)、属于单向迭代器,只能从一个方向走到头(只支持前进或后退,取决于实现),查找效率极差。不适合大量查询的场合。

这种典型的应用场合是各类缓冲池和栈的实现。

2、双向链表

双向链表相比单向链表,拥有前向和后向两个指针地址,所以适合以下场合:

(1)、删除时,可以删除任意元素,而只需要极小的开销;

(2)、添加时,当知道它的前一个或后一个位置的元素时,只需要极小的开销。

(3)、属于双向迭代器,可以从头走到尾或从尾走到头,但同样查找时需要遍历,效率与单向链表无改善,不适合大量查询的场合。

这种典型的应用场景是各种不需要排序的数据列表管理。

最新回复(0)