线性结构中,栈和队列算是表的特殊情况,它们有着各自的特性,换句话说,是在某些地方,限制了自身,不像表那样自由。
所以首先掌握表的使用,再对表的功能进行一定的限制,即可得到相关的栈和队列。
那是不是就是说:栈和队列不如表,或者说只要掌握表、使用表,不用管栈和队列,就足矣呢?
并不是如此。
不同的数据结构适应不同的场景,所以说没有最好,只有是否合适。
例如:解决排队的问题,用表显然也可以,它具备相关的函数,但是并不合适(多余了功能)。而此时,若使用队列这样的结构,就能完美匹配这个问题。
我们学习数据结构,是了解这样的结构,最终使用的都是已经具备特定函数的模板。
什么是模板?
私以为,不同的模板有各自的特性(对不同问题有不同适应程度),就模板自身,又具有普遍性(能适应一切类型)。