循环队列可以看作是顺序队列的拓展。顺序队列在经过一系列的入队、出队操作之后,即使队列容量尚有空余,但因为队尾指针已经“走到尽头”,也要进行一些扩容操作,这样就浪费了许多空间。而“循环队列”可以充分利用空间,减少扩容操作。一般情况,循环列表都是基于数组实现的。
Python切片操作
切片是Python语言的特性之一。无论是字符串还是数组都可以使用切片操作快速高效的获得目标值。使用起来也比较简单:
object[ start_index : end_index : step ]
start_index是起始索引,可正可负可省略,取值时包含该索引的值
end_index是终止索引,可正可负可省略,取值时不包含该索引的值
step是取值步长,可正可负可省略,正数时表示从左向右取值,负数时表示从右向左取值,省略时表示+1
越简单的东西越容易忽略,也就越容易犯错误,对,说的就是我!下面结合下方的例子,看一下几个切片操作。
TF VS TF-IDF 实验数据对比
主题词在文本中往往起到总结凝练的作用,代表一个文本的核心内容,在新闻、学术论文自动摘要以及网络检索等领域都有着广泛的应用。提取主题词比较常见的一种方法是基于词频统计的TF-IDF方法,通过对词语的权重进行打分排序,返回主题词,也就是后续向量空间模型(VSM)需要使用的特征词。存在的问题有:
- 未考虑词语间语义关系、上下文语境
- 可能将较高的权重赋予一部分稀有词
本文主要是通过对同一组样本数据进行分析,定性看一下基于TF得出的主题词和基于TF-IDF得出的主题词情况。
链式队列LinkedQueue
先进者先出,后进者后出,这就是典型的“队列”。队列跟栈一样,也是一种操作受限的线性表数据结构。队列最基本的操作就是入队(添加一个数据到队列尾部)和出队(从队列取一个元素)。用数组实现的队列叫顺序队列,用链表实现的队列叫链式队列。
链式栈LinkedStack
从结构上来说,栈是“后进者先出,先出者后进”;从操作上来说,栈是一种“操作受限”的线性表,只允许在一端插入和删除数据;从实现上来说,用数组实现的栈称为顺序栈,用链表实现的栈,称为链式栈。