数据结构
GoldenLeeK
这个作者很懒,什么都没留下…
展开
-
算法练习之字符串解码(PHP腾讯后台面试题之一)
算法练习之解码(PHP腾讯后台面试题之一)小Q想要给他的朋友发送一个神秘字符串,但是他发现字符串的过于长了,于是小Q发明了一种压缩算法对字符串中重复的部分进行了压缩,对于字符串中连续的m个相同字符串S将会压缩为m|S,例如字符串ABCABCABC将会被压缩为[3|ABC],现在小Q的同学收到了小Q发送过来的字符串,你能帮助他进行解压缩么?输入第一行包含一个字符串s,代表压缩后的字符串。S的长度<=1000;S仅包含大写字母、[、]、|;解压后的字符串长度不超过100000;压缩递归层数不原创 2020-06-27 14:24:07 · 340 阅读 · 0 评论 -
数据结构之冒泡排序---PHP版
最近在复习数据结构,就写一写博客来记录一下自己学习的路程。一、冒泡排序很形象的就是最小的数字不断往上冒泡,每冒泡一次最上面的数字就是最小的,这个过程很像在水里冒泡一样,所以就叫冒泡算法。如上图所示,这是经过了一次冒泡之后,2的位置从4变化到了1。所谓冒泡排序,最主要的思想就是两两比较,大的在下面小的在上面,这个过程也就是冒泡的过程。之后的冒泡过程也类似。经过6次冒泡,则成功将上面的集合...原创 2019-10-05 08:53:25 · 134 阅读 · 0 评论 -
数据结构之简单选择排序---PHP版
简单选择排序是一种尽量减少交换的一种排序方法。一、在之前介绍的冒泡排序算法中,它的思想就是不断进行交换不断进行交换,而简单选择排序就是找准一个最小值之后在进行交换。举个生活中简单的例子,很多人喜欢炒股,有一些人喜欢快买快卖从中快速赚取差额,但有一些喜欢看准时机等待时机再进行买入跟买出,这跟冒泡排序跟简单选择排序的思路很像。二、实现的原理每一次进行比较,不进行交换而记录最小值下标。就...原创 2019-10-05 22:42:01 · 190 阅读 · 0 评论 -
数据结构之直接插入排序---PHP版
直接插入排序的基本操作就是将一个记录有序的插入到已有的有序表中,从而得到一个新的记录数增加1的有序表。一、直接插入排序就是在逻辑上将一个数插入到已有的有序表中,所以我们需要一个辅助空间。二、代码实现(PHP版本)function insert(&$list){ $count = count($list) - 1; $tmp = null;//哨兵 ...原创 2019-10-05 23:05:34 · 127 阅读 · 0 评论