php SPL四种常用的数据结构

1.栈【先进后出】

<span style="font-size:18px;">$stack = new SplStack();
$stack->push(‘data1‘);
$stack->push(‘data2‘);
$stack->push(‘data3‘);
echo $stack->pop();

//输出结果为
//data3</span><span style="font-size:24px;font-weight: bold;">
</span>

2.队列【先进先出 后进后出】

<span style="font-size:18px;">$queue = new SplQueue();
$queue->enqueue("data1");
$queue->enqueue("data2");
$queue->enqueue("data3");
echo $queue->dequeue();
//输出结果为
//data1</span>

3.堆

<span style="font-size:18px;">$heap = new SplMinHeap();
$heap->insert("data1");
$heap->insert("data2");
echo $heap->extract();
//输出结果为
//data1</span>

4.固定尺寸数组

<span style="font-size:18px;">$array = new SplFixedArray(5);
$array[0]=1;
$array[3]=3;
$array[2]=2;
var_dump($array);
//输出结果为
// object(SplFixedArray)[1]
// public 0 => int 1
// public 1 => null
// public 2 => int 2
// public 3 => int 3
// public 4 => null</span>

原文:https://blog.csdn.net/zhengwish/article/details/51742264

原文地址:https://www.cnblogs.com/ivy-zheng/p/10927041.html

时间: 2024-10-04 06:20:07

php SPL四种常用的数据结构的相关文章

四种常见的数据结构、LinkedList、Set集合、Collection、Map总结

四种常见的数据结构:    1.堆栈结构:        先进后出的特点.(就像弹夹一样,先进去的在后进去的低下.)    2.队列结构:        先进先出的特点.(就像安检一样,先进去的先出来)    3.数组结构:        查找元素快,但是增删元素慢    4.链表结构:        增删元素快,但是查找元素慢 LinkedList:(List接口下的一个子类,和ArrayList是同级别关系)    1.底层是链表结构    2.它的一些特有方法:        addFir

javaservlet处理四种常用api请求get,put,post,delete

一般在网站搭建中servlet只需处理post,get请求便足已.本篇注重使用javaweb编写restful风格api,在servlet中对四种常用请求进行处理. 在api中对于一个请求要做的通常是提取header参数,提取携带数据(post,put).在这里已post为例来说明用法. 下面是发起的post请求,用python(很简单)写的,该请求既有自定义header参数Bearer,也有携带数据bodys里的内容 import json import requests taken='YWM

【转】 FPGA设计的四种常用思想与技巧

本文讨论的四种常用FPGA/CPLD设计思想与技巧:乒乓操作.串并转换.流水线操作.数据接口同步化,都是FPGA/CPLD逻辑设计的内在规律的体现,合理地采用这些设计思想能在FPGA/CPLD设计工作种取得事半功倍的效果. FPGA/CPLD的设计思想与技巧是一个非常大的话题,由于篇幅所限,本文仅介绍一些常用的设计思想与技巧,包括乒乓球操作.串并转换.流水线操作和数据接口的同步方法.希望本文能引起工程师们的注意,如果能有意识地利用这些原则指导日后的设计工作,将取得事半功倍的效果! 乒乓操作“乒乓

Redis5种常用的数据结构

一.数据结构 五种常用的数据结构:string.hash.list.set.zse,以及三种不常用的:hyperloglog.geospatial.streams. 二.常用数据结构的使用 1.String键 字符串键的使用场景:如分布式锁.计数器.分布式全局序列ID 2.Hash键        存在的最主要的意义就是:减少内存的占用,原因在于比如对key的过期时间的扫描,只需要扫描第一层key即可 Redis采用的数据分配方案是预分配16384个hash槽,Hash键可以理解成是通过用第一层

四种常用的post数据提交方式

application/x-www-form-urlencoded 这是默认的post传输方式,用url转码的方法,让数据以key1=val1&key2=val2的方式传输.此方式的数据形式与get方式一样. multipart/form-data 这个也是常见的方式,最常用于传输图片和其他文件.下面是一段数据事例: POST http://www.example.com HTTP/1.1 Content-Type:multipart/form-data; boundary=----WebKit

MySQL中四种常用存储引擎的介绍

MySQL常用的四种引擎的介绍 (1):MyISAM存储引擎: 不支持事务.也不支持外键,优势是访问速度快,对事务完整性没有 要求或者以select,insert为主的应用基本上可以用这个引擎来创建表 支持3种不同的存储格式,分别是:静态表:动态表:压缩表 静态表:表中的字段都是非变长字段,这样每个记录都是固定长度的,优点存储非常迅速,容易缓存,出现故障容易恢复:缺点是占用的空间通常比动态表多(因为存储时会按照列的宽度定义补足空格)ps:在取数据的时候,默认会把字段后面的空格去掉,如果不注意会把

米洛个人修炼术:情绪的四种常用处理方式,其实都是有问题的

今天周末,公司的几个同事约过来加班,但是从一上班就没有状态,总觉得事情多,心里好烦. 怎么破? 按照通用的说法,我们需要避开情绪,先去工作把事情做了,因为无论如何,工作不能耽误啊. 这么一说感觉确实是对的. 其实,这是错误的. 情绪会以隐藏的方式进入到工作中,进入到你的产品中.尤其是程序员朋友或是管理者,本来就要处理一大堆的问题,很容易烦躁.如果不先把情绪处理掉,就更容易在工作中发脾气,从而影响工作的质量. 那么,我们先来看看,通用的情绪处理方式是什么.往往有几大建议: 1.自己劝自己看开一些.

Android按钮单击事件的四种常用写法总结

很多学习Android程序设计的人都会发现每个人对代码的写法都有不同的偏好,比较明显的就是对控件响应事件的写法的不同.因此本文就把这些写法总结一下,比较下各种写法的优劣,希望对大家灵活地选择编码方式可以有一定的参考借鉴价值. xml文件代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 <Button     android:id="@+id/button1"     android:layout_width="wrap_content"     

java 正则表达式高级篇(四种常用的处理方式:匹配 分割 替代 获取)

package test; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * 正则表达式 * 正则表达式 的用法主要是4种方面的使用 * 匹配,分割,替换,获取. * 用一些简单的符号来代表代码的操作 * @author cyc * */ public class Rex { public static void main(String[] args) { //针对字符串处理 Rex reg = new R