博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
javascript链表实现
阅读量:5861 次
发布时间:2019-06-19

本文共 1548 字,大约阅读时间需要 5 分钟。

单链表初识

链表是由一组节点组合成的集合.每个节点都使用一个对象的引用指向它的后继,指向另一个节点的引用叫做

数组元素靠他们的位置进行引用,链表元素则是靠相互之间的关系进行引用,在下图中bread跟在milk后面而不是说bread是链表中的第二个元素。

而遍历链表,则是跟着首元素一直遍历至尾元素。由图可知尾元素指向一个null元素。

指针图解

为了更好的标志处链表的起始节点,我们在前面设置一个特殊节点,叫做头节点

加头节点的链表

插入节点:在链表中插入一个节点效果非常的高,需要修改其前面的节点,使指针指向新节点

插入节点

删除节点:删除节点即是将待删除元素的前驱节点指向待删除元素的后继节点。

删除节点

单链表代码实现

Node类实现

//Node类用来设置链表的节点相关信息     // 1 本节点信息 2 指向下一个节点的指针    function Node(ele){        this.element=ele;        this.next=null;    }

Llist类实现

Llist类实现的是一些对链表进行操作的方法,包括插入、删除节点、查找节点等。

插入节点

//Llist类的实现        function Llist(){            this.head=new Node("head");        }        //添加方法        Llist.prototype={            find:function(ele){                var curNode=this.head//从头节点开始遍历                while(curNode.element!=ele){                    curNode=curNode.next;                }                return curNode;//返回找到的节点 若是没有找到则返回的是null            },            insert:function(newEle,ele){//插入节点                var newNode=new Node(newEle);                var curNode=this.find(ele);                    newNode.next=curNode.next;                    curNode.next=newNode;            },            display:function(){//遍历显示节点信息                var curNode=this.head;                while(curNode.next!=null){                    console.log(curNode.next.element);//只显示有数据的节点                    curNode=curNode.next;                }            }        }

测试

//测试            var citys=new Llist();            citys.insert('赣州','head');            citys.insert('江西','赣州');            citys.insert('南昌','江西');            citys.display();

插入信息调试

明天开始校招,先写到这里^+^

转载地址:http://pfgjx.baihongyu.com/

你可能感兴趣的文章
Linux系统资源监控命令vmstat\mpstat\sar\iostat\top
查看>>
java笔试面试题---基础部分2
查看>>
并发编程源码分析一之Log接口
查看>>
[ASP.NET]跨页面传值
查看>>
我的友情链接
查看>>
Hello World
查看>>
关于nginx upstream的几种配置方式
查看>>
IE9 table显示问题
查看>>
ceph 快照,克隆,cow
查看>>
ImageMagick更改图片格式进而缩小图片
查看>>
需求感太强
查看>>
珠心算测验
查看>>
NFS安装及挂载
查看>>
国内网站监控分析网站
查看>>
Junit系列之六
查看>>
FSMO图形界面转移角色主机
查看>>
Windows server 2012多元化密码策略
查看>>
VI编辑器
查看>>
Spark 启动脚本——sbin/slaves.sh
查看>>
我的友情链接
查看>>