![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
程序设计
文章平均质量分 71
郭三亿
全面布局
展开
-
微信红包-找出数组中过半数的数字
题目春节期间小明使用微信收到很多个红包,非常开心。在查看领取红包记录时发现,某个红包金额出现的次数超过了红包总数的一半。请帮小明找到该红包金额。写出具体算法思路和代码实现,要求算法尽可能高效。给定一个红包的金额数组gifts及它的大小n,请返回所求红包的金额。没找到,返回0。思路思路一:部分快速排序受快速排序的partition函数的启发,我们可以利用反原创 2017-03-02 15:48:27 · 787 阅读 · 0 评论 -
一道苹果公司的面试题
有一道苹果公司面试软件工程师的面试题,题目如下:有100枚硬币平摆在桌面上,每个都有正面和背面。其中,10个正面朝上,剩余90个背面朝上。你不能触摸、看以及以任何其它方式去感知它们是处于正面或者是背面。请将硬币分成两拨,使每一拨里正面朝上的硬币数目一致。解法其实很简单:从100枚硬币中,分出来10枚,翻转,则翻转后的10枚堆和剩余的90枚堆,正面朝上的硬币数目一样。原创 2016-12-20 12:28:20 · 1293 阅读 · 0 评论 -
一道有趣的面试题
转载自:http://www.cricode.com/3558.html现在很多大型IT企业在面试时都喜欢问一些智力相关的题目,虽然智力面试题在面试笔试中占的比例不大,但很多时候,面试环节中智力题往往会成为我们拿offer的最大拦路虎。因为有些面试官认为通过智力题可以考查你的思维能力、抽象问题的能力。下面是一道很经典的智力型面试题,也是我一朋友在BAT面试中亲身见识过的一道题。各位转载 2016-12-08 15:57:57 · 804 阅读 · 0 评论 -
HTTPS 和 HTTP 的区别
什么是 HTTPS?HTTPS (基于安全套接字层的超文本传输协议 或者是 HTTP over SSL) 是一个 Netscape 开发的 Web 协议。你也可以说:HTTPS = HTTP + SSLHTTPS 在 HTTP 应用层的基础上使用安全套接字层作为子层。为什么需要 HTTPS ?超文本传输协议 (HTTP) 是一个用来通过互联网传输和接收信息的转载 2016-12-08 15:42:29 · 689 阅读 · 0 评论 -
PHP设计模式之——策略模式
策略模式(Strategy Pattern)是对象的行为模式,是对一组算法的抽象封装,动态的选择算法使用。在我们的日常生活中,策略模式体现在方方面面:早上起床我去公司,可以坐公交,可以坐出租车,也可以步行,最终的目的都是到达公司,但是却使用了不同的资源。策略模式的三个角色:抽象策略角色具体策略角色环境角色(对抽象策略角色的引用)策略模式的实现步骤:定义抽象角色(原创 2016-07-18 11:09:01 · 625 阅读 · 0 评论 -
MySQL学习之——锁(行锁、表锁、页锁、乐观锁、悲观锁等)
锁,在现实生活中是为我们想要隐藏于外界所使用的一种工具。在计算机中,是协调多个进程或县城并发访问某一资源的一种机制。在数据库当中,除了传统的计算资源(CPU、RAM、I/O等等)的争用之外,数据也是一种供许多用户共享访问的资源。如何保证数据并发访问的一致性、有效性,是所有数据库必须解决的一个问题,锁的冲突也是影响数据库并发访问性能的一个重要因素。从这一角度来说,锁对于数据库而言就显得尤为重要。原创 2016-06-14 12:04:57 · 64981 阅读 · 35 评论 -
机器学习之——多项式回归和正规方程
上一次我们分享了多变量线性回归模型(Linear Regression with Multiple Variables),这一次我们来讨论一下多项式回归(Polynomial Regression)和正规方程(Normal Equation)。(我们还是讨论房价预测的问题)多项式回归有时候,线性回归并不适用于所有全部的数据,我们需要曲线来适应我们的数据,比如一个二次方模型:原创 2016-04-19 11:24:58 · 6475 阅读 · 0 评论 -
PHP设计模式之——工厂模式
在开发大型系统过程中,往往会出现这样一种情况:我有一部分基础数据,是类classA是从数据库A读取出来的,其他很多的功能都是基于这个基础数据来操作的。现在呢,我想把数据从数据库A变成从另外的数据源去获取,这时候,要修改起来就比较麻烦,要修改其他很多类的代码。这种设计显然是不够灵活的,换句话说,就是紧耦合的,系统中某个部分的函数或类严重依赖于系统的其他部分中的函数或类的行为和结构。工厂模式,原创 2016-04-18 17:11:08 · 10934 阅读 · 0 评论 -
机器学习之——单变量线性回归
线性回归线性回归(Linear Regression)作为Machine Learning 整个课程的切入例子确实有独到的地方,以简单的例子为出发点,将学习任务的主干串起来。原创 2016-04-14 23:00:07 · 1547 阅读 · 0 评论 -
关于i++和++i
最近在优化公司代码的时候,发现了一些for循环,条件变量的自增都使用的是 i ++ , 让我想起来之前想到的问题 —— i ++ 和 ++ i 。很多书籍,都会写到i++和++i的问题,在大部分计算机人(包括本王)都熟悉的谭浩强版的教材中,也着重讲了 ++ 和 -- 操作,也加入了一些难点,这使得一部分人对这个操作上有了一些不一样的认识。很经典的论述:example 1 :int原创 2016-04-13 15:50:44 · 765 阅读 · 0 评论 -
PHP数据结构之——链表
链表是一种在逻辑上连续、有序的数据存储结构(在物理存储单元上非连续非有序)。在我大学的时候,学习C++的数据结构课程时,最先接触的就是链表(大学是学渣别喷...)那么链表是怎样的一种结构呢?用“形象的”文字来描述就是:node_1->node_2->node_3->node_4->...->node_n , 每一个node包含一些存储的数据引用百度百科的图片:链表就是这原创 2016-03-28 17:11:59 · 4231 阅读 · 0 评论 -
使用PHP创建SOCKET服务
最近好奇,接触接触PHP的socket编程,发现还是很好玩儿的。下面贴出来demo源码跟大家分享Server.php<?php/** * PHP Socket Server * *///确保客户端连接时不会超时error_reporting(0);原创 2016-03-24 17:59:37 · 6906 阅读 · 1 评论 -
PHP 自动载入
当一个项目需要根据不同的请求载入不同的类的时候,之前的做法是require不同的文件进来,但是如果数量巨大就没办法一个语句一个语句去写,而且如果有不小心误删的文件,就会导致PHP FATAL ERROR。在php5.2之后,我们使用__autoload()方法来自动加载类,但是这个方式后来也不好。比如在一个项目中我引入了三个框架,每个框架都有一个autoload,这样的话会报一个函数名重复的错误。原创 2016-03-27 23:39:19 · 475 阅读 · 0 评论 -
php解决约瑟夫问题
“约瑟夫环”是一个数学的应用问题:一群猴子排成一圈,按1,2,…,n依次编号。然后从第1只开始数,数到第m只,把它踢出圈,从它后面再开始数, 再数到第m只,在把它踢出去…,如此不停的进行下去, 直到最后只剩下一只猴子为止,那只猴子就叫做大王。要求编程模拟此过程,输入m、n, 输出最后那个大王的编号。下面列出了三种用PHP来解决此问题的方法:按逻辑依次去除递归算法线性表应用转载 2016-03-25 18:10:40 · 758 阅读 · 0 评论 -
PHP设计模式之——单例模式
首先我们看一个这样的应用场景:我们打开jd.com京东商城的官网首页,我们看到很多商城里的数据。我们知道页面的数据来源于数据库(亦或是缓存),从页面而看,数据分成了不同的模块,如下图。那么问题来了,不同模块的数据,是怎么通过一个请求资源来请求的呢?换句话说,如果每一个sql都要执行一次数据库连接,这将会是很多次连接,那么是怎么做到一个请求使用一个连接来处理的呢?有几种处理方式,原创 2016-03-28 12:17:19 · 516 阅读 · 0 评论 -
关于MYSQL的行列转换
同事今天中午去参加一个面试,有一道面试题比较基础把a b c1 1 1.11 2 1.21 3 1.32 1 2.12 2 2.22 3 2.3变成原创 2016-03-24 16:56:08 · 442 阅读 · 0 评论 -
关于LRU算法
一,LRU原理LRU(Least Recently Used,最近最少使用)算法根据数据的历史访问记录来进行淘汰数据,其核心思想是“如果数据最近被访问过,那么将来被访问的几率也更高”。实现最常见的实现是使用一个链表保存缓存数据,详细算法实现如下:1. 新数据插入到链表头部;2. 每当缓存命中(即缓存数据被访问),则将数据移到链表头部;3.原创 2016-04-06 10:24:46 · 7799 阅读 · 0 评论 -
等概率随机函数
昨天在做练习题的时候,看到了一道设计等概率随机函数的练习题,突然想到了之前看到过的问题,故仔细求解。问题如下:现有一个等概率随机函数f5,返回1~5这5个自然数随机一个数,需要用f5来构造f7,返回1~7这7个自然数的随机一个数,请问f7该如何构造?我灵光一现,这个简单啊,f5+f5%3,OK。但是仔细想想,好像不对,f5%3中,0的概率是1/5,1和2的概率是2/5,原创 2016-03-30 10:51:39 · 814 阅读 · 2 评论