
数据结构和算法
rich_family
这个作者很懒,什么都没留下…
展开
-
栈的定义及应用场景
栈是仅限定从尾部进行插入和删除操作的线性表结构。具有先进后出,后进先出的特性。 栈的应用实例 1、数制转化 2、括号匹配校验 3、迷宫求解 4、实现递归-汉诺塔 /** * n表示圈编号,此函数表示将编号n及以上的圈从a,借助于b,移至c */ function hannuota($n,$a,$b,$c){ if($n==1){ mov($a,1,$原创 2017-03-21 22:41:09 · 2636 阅读 · 0 评论 -
斐波拉契数列-青蛙跳台
斐波拉契数列指的是这样一个数列:1、1、2、3、5、8、13、21、34… 定义f(0)=1,f(1)=1,f(n)=f(n-1)+f(n-2) 青蛙跳台阶问题:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求 该青蛙跳上一个n级的台阶总共有多少种跳法? 跳一阶有一种跳法,f(1)=1,跳二阶的时候有两种跳法,f(2)=2,跳三阶的 时候可以这么考虑,先跳一阶,然后再两阶f(2)原创 2017-03-22 08:50:27 · 1912 阅读 · 0 评论 -
hash table及hash冲突
hash table定义 根据key通过hash算法得到地址(value)的一种数据结构。 hash函数 把任意长度的输入通过hash函数得到固定长度的输出 好的hash算法分布要均匀,如time33,应用广泛,php采用此hash算法 hash = hash*33 + str[i]; hash冲突 不同的key经过计算出hash值相同,产生hash冲突。 1. 开放定址法原创 2018-01-28 11:12:02 · 706 阅读 · 0 评论