首页 / PHP / PHPSPL数据结构笔记摘要
PHPSPL数据结构笔记摘要
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHPSPL数据结构笔记摘要,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2560字,纯文字阅读大概需要4分钟。
内容图文
![PHPSPL数据结构笔记摘要](/upload/InfoBanner/zyjiaocheng/157/0f4276609335423db717c1a823996b58.jpg)
SplDoublyLinkedList
数据结构:(c代码参考PHP7.0.0)
typedef struct _spl_ptr_llist_element { struct _spl_ptr_llist_element *prev; struct _spl_ptr_llist_element *next; int rc; // 引用次数 void *data; // 数据类型 } spl_ptr_llist_element; typedef struct _spl_ptr_llist { spl_ptr_llist_element *head; spl_ptr_llist_element *tail; spl_ptr_llist_dtor_func dtor; // 删除元素 引用-1 spl_ptr_llist_ctor_func ctor; // 创建元素 引用+1 int count; // 元素个数 } spl_ptr_llist; struct _spl_dllist_object { zend_object std; spl_ptr_llist *llist; int traverse_position; spl_ptr_llist_element *traverse_pointer; zval *retval; int flags; zend_function *fptr_offset_get; zend_function *fptr_offset_set; zend_function *fptr_offset_has; zend_function *fptr_offset_del; zend_function *fptr_count; zend_class_entry *ce_get_iterator; HashTable *debug_info; };
双向链表 SplDoublyLinkedList implements Iterator , ArrayAccess , Countable { /* 方法 */ public __construct ( void ) public void add ( mixed $index , mixed $newval ) public mixed bottom ( void ) public int count ( void ) public mixed current ( void ) public int getIteratorMode ( void ) public bool isEmpty ( void ) public mixed key ( void ) public void next ( void ) public bool offsetExists ( mixed $index ) public mixed offsetGet ( mixed $index ) public void offsetSet ( mixed $index , mixed $newval ) public void offsetUnset ( mixed $index ) public mixed pop ( void ) public void prev ( void ) public void push ( mixed $value ) public void rewind ( void ) public string serialize ( void ) public void setIteratorMode ( int $mode ) public mixed shift ( void ) // 删除第一个元素 public mixed top ( void ) public void unserialize ( string $serialized ) public void unshift ( mixed $value ) //将value插入的第一个元素,原来的第一个元素不删除 public bool valid ( void ) }
需要注意的是:
add 是5.5+版本添加的函数,其它都是5.3+
从数据结构中可以看出,虽然许多函数中都包含有直接索引第index 个元素,如果不在范围则抛出OutOfRangeException异常,实际实现时时间复杂度为O(n)。
具体函数详细可参考php官方手册
以上就介绍了PHP SPL 数据结构笔记摘要,包括了方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
内容总结
以上是互联网集市为您收集整理的PHPSPL数据结构笔记摘要全部内容,希望文章能够帮你解决PHPSPL数据结构笔记摘要所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。