zoukankan      html  css  js  c++  java
  • JS实现单链表

            
            <script> 
                //Student节点
                function Student(no,name){ 
                    this.id=no; 
                    this.name=name; 
                    this.scores={chinese:0,math:0,english:0}; 
                }
                 
               //链表
                function List(){ 
                    this.head=null; 
                    this.end=null; 
                    this.curr=null; 
                } 
    
                //添加节点
                List.prototype.add=function(o){ 
                    var tem={ob:o,next:null};
                    
                    if(this.head){ //链表不为空 
                        this.end.next=tem; 
                        this.end=tem; 
                    }
                    else{ //链表为空
                        this.head=tem; 
                        this.end=tem; 
                        this.curr=tem; 
                    } 
                } 
    
                //删除第inde个节点
                List.prototype.del=function(inde){ 
                    var n=this.head; 
                    for(var i=0;i<inde;i++){ 
                        n=n.next; 
                    } 
                    n.next=n.next.next?n.next.next:null; 
                } 
    
                //下一个节点
                List.prototype.next=function(){ 
                    var te=null; 
                    if(this.curr){ 
                        te=this.curr.ob; this.curr=this.curr.next;
                    } 
                    return te; 
                } 
    
                //是否存在下一个节点
                List.prototype.hasnext=function(){ 
                    if(this.curr.ob!=null)
                        return true; 
                    return false; 
                } 
                
                var list=new List(); 
        
                for(var i=0;i<1000;i++){ 
                    list.add(new Student(i,'name'+i)); 
                } 
                var i=0; 
                while(list.hasnext()){ 
                    document.writeln(list.next().name); 
                    if(i==10){
                        document.writeln('<br/>'); 
                        i=0;
                    } 
                    i++; 
                } 
            </script>
  • 相关阅读:
    String系列
    java初始化构造函数调用顺序
    转发和重定向的区别
    HttpServletResponse对象
    JSP九大隐式对象
    关于异常
    MySQL下载、安装及启动
    MySQL的启动
    MySQL下载及安装
    U盘安装Win7操作系统
  • 原文地址:https://www.cnblogs.com/yingsmirk/p/2461129.html
Copyright © 2011-2022 走看看