
数据结构以及算法
10000cat
这个作者很懒,什么都没留下…
展开
-
PHP线程安全和非线程安全的区别
Windows版的PHP从版本5.2.1开始有Thread Safe。这两者不同在于何处?到底应该用哪种?这里做一个简单的介绍。从2000年10月20日发布的第一个Windows版的PHP3.0.17开始的都是线程安全的版本,这是由于与Linux/Unix系统是采用多进程的工作方式不同的是Windows系统是采用多线程的工作方式。如果在IIS下以CGI方式运行PHP会非常慢,这是由于CGI模式是建立在多进程 的基础之上的,而非多线程。一般我们会把PHP配置成以ISAPI的方式来运行,ISAPI是多线程.原创 2020-06-16 10:01:51 · 205 阅读 · 0 评论 -
页面置换算法--最少使用LFU置换算法( Least Frequently Used Page-Replacement Algorithm)
该算法选择最近时期内使用次数最少的页作为淘汰页。这种算法为每个页保留一个用于记录 页被访问次数 的计数器,每次选择其访问计数器值最小的页换出。...原创 2019-06-04 15:17:07 · 2746 阅读 · 1 评论 -
页面置换算法--最近最久未使用LRU置换算法
LRU,Least Recently Used算法描述:选择内存中最近最久未使用的页换出。该算法赋予每个页一个访问字段,用来记录一个页自上次被访问以来所经历的时间t。LRU算法的实现:1.寄存器:为每个内存中的页配置一个移位寄存器,可标识为R=Rn-1........R2R1R0 .当进程访问某页时候,要将相应的寄存器的最高位置成1.此时,每隔一定时间将寄存器右移一位。如果把n位寄存器的数...原创 2019-06-04 14:56:22 · 1408 阅读 · 0 评论 -
IO 多路复用
https://www.jianshu.com/p/6a6845464770作者:levin链接:https://www.zhihu.com/question/32163005/answer/255238636来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。IO 多路复用是5种I/O模型中的第3种,对各种模型讲个故事,描述下区别:故事情节为:老李...转载 2019-05-13 11:58:56 · 88 阅读 · 0 评论 -
为什么Mysql用B+树做索引而不用B-树或红黑树
https://blog.youkuaiyun.com/xiedelong/article/details/81417049B+树只有叶节点存放数据,其余节点用来索引,而B-树是每个索引节点都会有Data域。所以从Mysql(Inoodb)的角度来看,B+树是用来充当索引的,一般来说索引非常大,尤其是关系性数据库这种数据量大的索引能达到亿级别,所以为了减少内存的占用,索引也会被存储在磁盘上。那么Mysq...转载 2019-05-15 09:39:44 · 954 阅读 · 0 评论 -
Red-Black Trees
http://pages.cs.wisc.edu/~paton/readings/Red-Black-Trees/ContentsIntroduction Red-Black Tree Operations insert delete SummaryIntroductionRecall that, for binary search trees, althou...转载 2019-05-15 09:11:16 · 266 阅读 · 0 评论 -
最小二乘法的原理与要解决的问题
最小二乘法是由勒让德在19世纪发现的,形式如下式:观测值就是我们的多组样本,理论值就是我们的假设拟合函数。目标函数也就是在机器学习中常说的损失函数,我们的目标是得到使目标函数最小化时候的拟合函数的模型。举一个最简单的线性回归的简单例子,比如我们有个只有一个特征的样本:样本采用一般的为次的多项式拟合,为参数最小二乘法就是要找到一组使得(残差平方和) 最小,即...转载 2019-03-08 09:34:28 · 2174 阅读 · 0 评论 -
拉格朗日乘数法
一、定义介绍在数学最优问题中,拉格朗日乘数法(以数学家约瑟夫·路易斯·拉格朗日命名)是一种寻找变量受一个或多个条件所限制的多元函数的极值的方法。看起来很复杂,名字也挺酷的,但是应用时并不难。设给定二元函数和附加条件为寻找在附加条件下的极值点,先做拉格朗日函数,其中为参数。令对和和的一阶偏导数等于零,即由上述方程组解出,及,如此求...转载 2019-03-08 08:52:55 · 2411 阅读 · 0 评论 -
详解b+树,多列索引结构和原理
本文摘抄自美团的技术博客 MySQL索引原理及慢查询优化索引的数据结构前面讲了生活中索引的例子,索引的基本原理,数据库的复杂性,又讲了操作系统的相关知识,目的就是让大家了解,任何一种数据结构都不是凭空产生的,一定会有它的背景和使用场景,我们现在总结一下,我们需要这种数据结构能够做些什么,其实很简单,那就是:每次查找数据时把磁盘IO次数控制在一个很小的数量级,最好是常数数量级。那么我们就想到...转载 2018-08-20 11:31:34 · 1789 阅读 · 0 评论 -
B树及其变种B+树的区别
强烈建议参阅链接:http://www.linezing.com/blog/?p=798#nav-1 说白了,索引问题就是一个查找问题。。。数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。索引的实现通常使用B树及其变种B+树。在数据之外,数据库系统还维护着满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结...转载 2018-08-20 11:12:04 · 842 阅读 · 0 评论 -
从 MongoDB 及 Mysql 谈B/B+树
https://blog.youkuaiyun.com/wwh578867817/article/details/50493940前两天有位朋友邀请我回答个问题,为什么 MongoDB (索引)使用B-树而 Mysql 使用 B+树?我觉得这个问题非常好,从实际应用的角度来学习数据结构,没有比这更好的方法了。因为像 Mysql 和 MongoDB 这种经久考验的大型软件在设计上都是精益求精的,它们为什么选...转载 2018-08-19 10:43:34 · 181 阅读 · 0 评论