数据结构
Kuyin328178972
这个作者很懒,什么都没留下…
展开
-
链栈的JS实现
官方定义:链式栈是一种数据存储结构,可以通过单链表的方式来实现,使用链式栈的优点在于它能够克服用数组实现的顺序栈空间利用率不高的特点,但是需要为每个栈元素分配额外的指针空间用来存放指针域。 具体的实现<!DOCTYPE html><html> <head> <met...原创 2018-08-17 16:46:13 · 408 阅读 · 0 评论 -
js实现链表队列
定义:队列是只允许在一端进行插入操作,而在另一端 进行删除操作的线性表。与栈相反,队列是一 种先进先出的线性表。与栈相同的是,队列也是一 种重要的线性结构,实现一个队列同 样需要顺序表或链表作为基础。如下图所示: 队列的具体实现:<!DOCTYPE html><html> <head...原创 2018-08-17 18:33:26 · 773 阅读 · 0 评论 -
无向图-邻接表js实现
邻接表,存储方法跟树的孩子链表示法相类似,是一种顺序分配和链式分配相结合的存储结构。如这个表头结点所对应的顶点存在相邻顶点,则把相邻顶点依次存放于表头结点所指向的单向链表中。对于无向图来说,使用邻接表进行存储也会出现数据冗余,表头结点A所指链表中存在一个指向C的表结点的同时,表头结点C所指链表也会存在一个指向A的表结点。如下为具体的代码实现:<!DOCTYPE html&g...原创 2018-08-30 09:46:24 · 1068 阅读 · 0 评论 -
图-十字链表,邻接多重表,边集数组
邻接表固然优秀,但也有不足,例如对有向图的处理中,有时候需要再建立一个逆邻接表。我们思考有没有可能把邻接表和 逆邻接表结合起来呢? 答案是肯定的,这就是我们现在要谈的十字链表。为此我们 重新定义 了顶点表的结构;重新定义边表的结点结构: 十字链表的好处就是因为把邻接表和 逆邻接表整合在一起,这样容易找到以Vi为尾的弧, 也容易找到以Vi为头的弧,因而容易求得顶点的出度和 ...原创 2018-08-30 14:49:19 · 274 阅读 · 0 评论