PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

在python的开发过程中如何进行单链表的实现(代码)

坏嘻嘻
坏嘻嘻 原创
2018-09-15 09:33:11 10382浏览

本文介绍了如何实现单链表,希望大家耐心学习。          

//节点class node{
    //初始化变量,包括存储的内容 和 下一个数据的指针
    public $id = 0;    public $data = '';    public $next = null;    //构造函数,设置存储内容的数据
    public function __construct($id, $data)
    {
        $this->id = $id;    
            $this->data = $data;
    }
}//单链表 
  class singelLinkList{
    private $header;
     //链表头节点   
    //添加节点数据   
    public function addLink($id = null, $name = null)
    {
        $node = new node ($id, $name);     
           $current = $this->header;    
               if (!$current) {       
                    $this->header = $node;
             } else {       
                  # 链表头插
             $node->next = $current;   
                       $this->header = $node;  
                                 # 链表尾插
            /*# 循环,获取对象中最后一个元素
            while ($current->next != null) {
                $current = $current->next;
            }
            # 最后一个元素的next指针指向$node
            $current->next = $node;*/
        }
    }    public function delLink($id = null, $name = null)
    {
        $current = $this->header;        # 循环
        while ($current->next != null) {        
            # 查找待删除元素 $delCurrent 的上一个元素
            if ($current->next->id == $id) {         
                   $delCurrent = $current->next;         
                          # 查找待删除元素 $delCurrent 的下一个元素
                $current->next = $delCurrent->next;        
                        # 删除元素 $delCurrent
                $delCurrent = null;      
                          break;
            }         
               $current = $current->next;
        }

    }
}$lists = new singelLinkList();
$lists->addLink(1, 'aaaaaa');
$lists->addLink(2, 'bbbbbb');
$lists->addLink(3, 'cccccc');
$lists->addLink(4, 'dddddd');
$lists->addLink(5, 'eeeeee');
$lists->delLink(4);echo &#39;<pre class="brush:php;toolbar:false">&#39;; 
print_r($lists);
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。