数据结构
php_kevlin
厚德 博学 求真 至善
展开
-
PHP实现快速排序
1.核心要点取一个值(最好是中间值),将数组中的元素依次和这个值相比较,如果大于放到新建的右边的数组中,如果小于此值,将原数组中的元素放到左边的数组中,然后依次递归左边的数组和右边的数组,但是递归需要跳出条件,当传入的数组是最后一个元素时,也就是数组的数量等于1就不用排序了,直接返回,然后合并返回的数据。原理:先将数组慢慢分解(选等级),再将数组慢慢合并(贪吃蛇原理)public funct...原创 2020-01-07 10:48:39 · 105 阅读 · 0 评论 -
六.树
1.树的定义树(Tree) 是n(n>=0)个结点的有限集.n=0时称为空树.在任意一棵非空树中:(1)有且仅有一个特定的称为(Root)的结点;(2)当n>1时,其余结点可分为m(m>0)个互不相交的有限集T1,T2…Tm,其中,每一个集合本身又是一棵树,并且称为根的子树(SubTree),如图6-2-1所示.2.结点分类结点拥有的子树数称为结点的度(Degree...原创 2019-10-17 15:33:59 · 116 阅读 · 0 评论 -
五.串
串(string)是由零个或者多个字符组成的有限序列,又名叫字符串.串中的字符数目称为串的长度零个字符的串称为空串串的比较是通过组成串的字符之间的编码来进行的,而字符的编码指的是字符在对应字符集中的序号ASCII码由8位二进制数表示一个字符串的顺序存储结构用一组地址连续的存储单元来存储串中的字符序列的(定长数组来定义)计算机中存在一个自由存储区,叫做”堆”串的链式存储结构,和线性表...原创 2019-10-14 15:58:28 · 141 阅读 · 0 评论 -
四.栈和队列
栈(stack):限定仅在线性表表尾进行插入和删除操作的线性表允许插入和删除的一端称为栈顶;另一端称为栈尾,后进先出,简称LIFO结构栈的插入操作叫做进栈,也称圧栈,入栈栈的删除操作叫做出栈,也有的叫做弹栈两栈共享空间是在数组的两端,让他们向中间靠拢 两指针相差1为栈满对于栈来说,如果是两个相同数据类型的栈,则可以通过数组的两端作为栈底的方法让两个栈共享数据,这样就可以最大化的利用数...原创 2019-10-12 17:28:09 · 111 阅读 · 0 评论 -
PHP对二维数组中的某个字段的值进行排序
/** *二维数组根据字段进行排序 *$field 字段名 *SORT_ASC 升序 *SORT_DESC 降序 */function arraySequence($array, $field, $sort = 'SORT_DESC'){ $arrSort = array(); foreach ($array as $uniqid => $row) ...原创 2019-03-20 16:07:25 · 827 阅读 · 0 评论 -
RSA加密算法(原理)
RSA加密算法是最常用的非对称加密算法,CFCA在证书服务中离不了它。但是有不少新来的同事对它不太了解,恰好看到一本书中作者用实例对它进行了简化而生动的描述,使得高深的数学理论能够被容易地理解。我们经过整理和改写特别推荐给大家阅读,希望能够对时间紧张但是又想了解它的同事有所帮助。 RSA是第一个比较完善的公开密钥算法,它既能用于加密,也能用于数字签名。RSA以它的三个发...转载 2019-04-27 10:35:04 · 1073 阅读 · 0 评论 -
一.数据结构绪论
数据结构是一门研究非数值计算的程序设计问题中的操作对象,以及他们之间关系的操作等相关问题的学科.数据:描述客观事物的符号,是计算机中可以操作的对象,是能被计算机识别,并输入给计算机处理的符号集合(图片,视频,文字)数据元素:是组成数据的,有一定意义的基本单位,在计算机中通常作为整体处理.也被称为记录.(牛,马,狗,猪,羊是禽类的数据元素)数据项:一个数据元素有若干个数据项组成,数据项是数据不...原创 2019-10-09 10:02:01 · 100 阅读 · 0 评论 -
二.算法
算法:解决特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示一个或者多个操作算法的五个特性:1.输入 2.输出 3.有穷性 4.确定性 5.可行性算法设计的要求:1.正确性 2.可读性 3.健壮性 4.时间效率高和存储量低算法效率的度量方法:1.事后统计法 2.事前分析估算法函数的渐进增长:给定两个函数f(n)和g(n),如果存在一个整数N,...原创 2019-10-09 15:23:26 · 344 阅读 · 0 评论 -
三.线性表
线性表(List):零个或者多个数据元素的有限序列有且只有一个直接前驱元素,有且只有一个直接后继线性表元素的个数n(n>0)定义为线性表的长度,当n=0时,称为空表在较复杂的线性表中,一个数据元素可以由若干个数据项组成线性表的顺序顺序存储结构:用一段地址连续的存储单元依次存储线性表的数据元素一维数组来实现顺序存储结构.数组的长度和线性表的长度的区别?数组的长度是存放线性表存储空...原创 2019-10-10 17:27:11 · 125 阅读 · 0 评论