面试

一本算法刷题必读配套书 下载

我与影子孤独终老i 提交于 2021-01-02 19:25:22
昨天推送一道算法题: 我对一类常考算法面试题的详细分析 ,后台几位读者留言说看不懂。 其实遇到自己看不懂的、不会的也是一件好事。 你想啊,总是看那些娱乐性的新闻、抓热点的消息,虽然你一看都明白,可是看完后除了可能变得更浮躁外,能让你收获什么专业知识吗? 遇到不会的,想办法搞懂它,就是一个进步。日积月累下来,就是一个大进步。 今天,分享一个非常不错的开源书籍,如果你刷LeetCode题总是看答案后才恍然大悟,一去做题就容易没思路,那么你可以好好结合着看看这本书了。 它包括了核心的计算机算法思想和常见的算法解题方法,同时概念讲解严谨。 这是一本值得去反复读、反复品的计算机好书。同时建议读英文原版(大家都是程序员,计算机基础专业术语就那些,遇到不会的还可以查,所以没问题,要对自己有信心)。 摘取目录,第二章基本的数据结构:集合,函数,序列,求和: 平时对递归等吃不透的有福了,第5章讲解的很清楚;同时刷题常见的数数问题在6和8章都有介绍,包括各种算法思想和解体思路原理: 如果平时只顾着刷题,而忽视了题目背后的数学原理总结,缺少一本理论指导书,它就是答案: 每读一遍,就能少些一个bug. 长按关注下方《算法刷题日记》公众号,并在里面回复: 1 ,不仅仅有此书的pdf下载,还有650道LeetCode真题和答案打包下载. 长按关注 算法刷题日记 回复 1 本文分享自微信公众号 -

PHP经典面试题目汇总(上篇)

好久不见. 提交于 2021-01-02 17:02:56
1、双引号和单引号的区别 双引号解释变量,单引号不解释变量 双引号里插入单引号,其中单引号里如果有变量的话,变量解释 双引号的变量名后面必须要有一个非数字、字母、下划线的特殊字符,或者用{}讲变量括起来,否则会将变量名后面的部分当做一个整体,引起语法错误 双引号解释转义字符,单引号不解释转义字符,但是解释'\和\\ 能使单引号字符尽量使用单引号,单引号的效率比双引号要高(因为双引号要先遍历一遍,判断里面有没有变量,然后再进行操作,而单引号则不需要判断) 2、常用的超全局变量(8个) $_GET ----->get传送方式 $_POST ----->post传送方式 $_REQUEST ----->可以接收到get和post两种方式的值 $GLOBALS ----->所有的变量都放在里面 $_FILES ----->上传文件使用 $_SERVER ----->系统环境变量 $_SESSION ----->会话控制的时候会用到 $_COOKIE ----->会话控制的时候会用到 3、HTTP中POST、GET、PUT、DELETE方式的区别 HTTP定义了与服务器交互的不同的方法,最基本的是POST、GET、PUT、DELETE,与其比不可少的URL的全称是资源描述符,我们可以这样理解:url描述了一个网络上资源,而post、get、put、delegate就是对这个资源进行增、删、改

测试开发面试题目汇总

拈花ヽ惹草 提交于 2021-01-02 16:15:13
  之前因为面临换工作,所以通过一些渠道汇总了一些面试题目,然后加入了部分自己面试过程中遇到的问题,因此记录下来。文末有惊喜。    1. 项目经验 2. 测试的过程 3. 京东登录页面怎么测? 4. 如果一个普通用户,他的百度首页打不开,问题怎么定位?写出定位流程。 5、问简历上的第一个项目的详细情况,包括测试用例怎么写?怎么判断测试通过?项目的原理? 6、如果是做功能测试,能接受吗? 7、说一下你们工作中的测试流程 8、用她的手机给我看了下百度贴吧的发帖功能的界面,给我张纸,让我写出测试点(只需要考虑内容,表情,添加图片,@功能),写完讲一遍逻辑。 9 针对发朋友圈这个功能设计你的测试用例,请给出用例分类与典型用例场景 10. Java 中的容器有哪些?它们的区别和特性? 11. Git 的常见操作,如 git stash 12 Java 的接口与抽象类的区别 13 TCP 和 UDP 的区别?如何保证 TCP 的可靠性? 14 打开一个网页都发生了哪些事? 15 对工作上的压力怎么看待? 16 继续问项目经验和技术难点 17了解现在的工作环境,背景等 18. 户口,家庭情况,伴侣工作等 19 问上一份工作的公司是做什么的?离职原因?自己的职业发展规划? 20 遇到的某个难点是什么?如何解决的? 21. 自己解决的最亮点的技术难点是什么? 22 你用jmeter做什么测试?

java多线程详解

雨燕双飞 提交于 2021-01-02 15:20:54
1、返回当前线程的名称:Thread.currentThread.getName(); 2、Thread的名称由Thread+编号定义,编号从0开始 3、线程要运行的代码统一都放到了run方法下面 4、线程要运行必须要通过类中指定的方法开启。Start()(启动后就多了一条执行路径) 注意:start() 1、启动了一个线程 2、让jvm调用了run方法 二、Thread类中start()方法和run()方法的区别   1、线程通过调用start()方法启动了一个线程,这时线程就处于就绪状态,一旦得到cpu时间片就执行run方法。这里的run方法称为是线程体,它包含了要执行的线程的内容,run()方法执行完毕,线程终止   2、run()方法只是类的一个普通的方法,如果直接调用run()方法的话,程序中仍然只有主线程这一个线程。其程序的执行路径还是只有一条,还是按照顺序执行    总结:start()方法最本质的功能是申请另一个线程空间来执行run方法中的代码。它和当前线程是两条线,在相对独立的线程空间运行,也就是说,如果你直接调用线程对象的run()方法,当然也会执行,但那是 在当前线程中执行,run()方法执行完成后继续执行下面的代码.而调用start()方法后,run()方法的代码会和当前线程并发(单CPU)或并行 (多CPU)执行。所以请记住一句话

Github 买 Star?

寵の児 提交于 2021-01-02 14:01:08
今天上班,刷了一下 Github Trending,发现第一名是一个名叫 kui-vue,一天涨了一千多个 star 项目。 我刚开始还以为又是什么大厂开源了什么 UI 框架,仔细看了下发现是一个个人的项目,但 issue 和 pr 都特别少,看了一下在线实例,也没发现什么亮点!这就让我感到特别的奇怪,那是什么导致它一天涨了 1000 多 star 呢?作为一个非大 v,又没有大厂光环加持的情况下,日涨 1000 是一件非常难得事情。 于是我仔细查看了一下 star 它用户的人,发现一个有趣的现象!我这里随便截图一下。 发现没有,大部分都是无头像的这种用户,这种用户大家都懂的。接着,我逐个点开这几个用户来看一下。 都不想再多截图了,我随手 按顺序 看了几个用户都这样,有没有发现一个共同点,他们都 star 了QilinBaoleiji,CocoaDebug,FETopic。而且是: 有且只 star 了这几个项目 。而且这个项目 fork 少的可怜。。。 现在我们来总结一下:我们点开了这个项目的关注人,随手查看了最新的 12 个关注人的人,发现他们都普遍关注了四五个项目,而且这 12 个人关注的项目都一样。这样的概率有多少?这也太巧合了吧!忍不住要吐槽一下,这小哥买 star 还是买的最 low 版本吧,这僵尸号也太低级了,一眼就看出来是有猫腻的,既然花钱了,买高级粉丝啊!

灵魂拷问:你和大佬,技术差距有多大?

倖福魔咒の 提交于 2021-01-02 13:59:07
今天咱们聊点技术以外的内容。   前几天,有程序员在某个坛子上发帖吐槽,新来的应届生张嘴就是分布式,一堆框架,可代码根本不会写。 马上有人跟贴说自己也遇到过这种情况,说之前自己遇到过一个应届生,开口闭口动态规划和红黑树,却连Git都不会用。 有人说自己教一个应届生,光Git就教了三个月。 网友吐槽,这就是传说中的不落地吗? 许多人给楼主出主意,有人说干脆让他学完了再来上班吧。 有人说他自己都不想学代码,管他干什么?让他去财务结账走人算了。   这是小公司的情况。 进大厂就更难了。只要去面试,薪资高一点的的开发岗,除了问你应用层面的问题,还会问你开发原理层面的问题,比如:GC的回收机制是什么?异步操作在什么情况下会锁死?装箱操作是怎么完成的?诸多问题,目的是考察你对开发语言和开发框架的基础编程的扎实程度 - 这对于技术更新迭代飞速的开发语言来说,至关重要。   因此,很多技术大佬建议: 充分了解自己在技术方面的短板,并有针对性地大量阅读代码,是提升开发水平的关键 。 阅读代码好解决,有很多优质的来源,比如: Github Stackoverflow Code Review on StackExchange 优质的公众号/博客 而真正的了解自己的技术短板,却是比较难。   今天这个情况有了改变。 我把这几年积累的公司面试比较高频的考察内容,以及自己在日常开发过程中经常使用的代码

史上最全 40 道 Dubbo 面试题及答案,看完碾压面试官!

橙三吉。 提交于 2021-01-02 13:04:44
Java技术栈 www.javastack.cn 优秀的Java技术公众号 想往高处走,怎么能不懂 Dubbo? Dubbo是国内最出名的分布式服务框架,也是 Java 程序员必备的必会的框架之一。Dubbo 更是中高级面试过程中经常会问的技术,无论你是否用过,你都必须熟悉。 下面我为大家准备了一些 Dubbo 常见的的面试题,一些是我经常问别人的,一些是我过去面试遇到的一些问题,总结给大家,希望对大家能有所帮助。 1、Dubbo是什么? Dubbo是阿里巴巴开源的基于 Java 的高性能 RPC 分布式服务框架,现已成为 Apache 基金会孵化项目。 面试官问你如果这个都不清楚,那下面的就没必要问了。 官网:http://dubbo.apache.org 2、为什么要用Dubbo? 因为是阿里开源项目,国内很多互联网公司都在用,已经经过很多线上考验。内部使用了 Netty、Zookeeper,保证了高性能高可用性。 使用 Dubbo 可以将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,可用于提高业务复用灵活扩展,使前端应用能更快速的响应多变的市场需求。 下面这张图可以很清楚的诠释,最重要的一点是,分布式架构可以承受更大规模的并发流量。 下面是 Dubbo 的服务治理图。 3、Dubbo 和 Spring Cloud 有什么区别? 两个没关联,如果硬要说区别

程序员怎样出版一本技术书

依然范特西╮ 提交于 2021-01-02 12:03:06
在面试或联系副业的时候,如果能令人信服地证明自己的实力,那么很有可能事半功倍。如何证明自己的实力?最有信服力的是大公司职位背景背书,没有之一,比如在BAT担任资深架构,那么其它话甚至都不用讲了。 不过,不是每个人入职后马上就是大公司架构师,在上进的路上,还可以通过公众号,专栏博文,github代码量和出书出视频等方式来证明自己。和其它方式相比,属于自己的技术图书由于经过了国家级出版社的加持,相对更能让别人认可自己的实力,而对于一些小公司而言,一本属于自己的书甚至可以说是免面试的通行证。所以在本文里,就将和广大程序员朋友聊聊出版技术书的那些事。 1 不是有能力了再出书,而是在出书过程中升能力 我知道的不少朋友,是在工作3年内出了第一本书,有些优秀的,甚至在校阶段就出书了。 与之相比还有另外一种态度,不少同学可能想,要等到技术积累到一定程度再写。其实这或许就不怎么积极了,边写书,边升技术,而且写出的书对人还有帮助,这绝对可以做到的。 比如有同学向深入了解最近比较热门的python数据分析和机器学习,那么就可以在系统性的学习之后,整理之前学习到的爬虫,数据分析和机器学习的案例,根据自己的理解,用适合于初学者的方式整理一下,然后就能出书了。这种书,对资深的人帮助未必大,但由于包含案例,对入门级的读者绝对有帮助,因为这属于现身说法。而且话说回来,如果没有出书这个动力

C++ const详解

谁说胖子不能爱 提交于 2021-01-02 05:27:43
  常量在C++中经常用到,用关键字 const 表示,它是常数变量,也就是说,它仍然是 变量 ,而不是 常数 。什么区别呢?编译器会为变量在内存中分配地址空间,而常数是编译器在编译过程中记录在内存表里一个实体。 常量定义 const int a = 10 ; 在定义完之后,就不能再修改常量 a 的值了。如果是在不同的文件中使用,需要用到关键字 extern extern const int a ; 这样表示变量 a 是一个定义别处的全局变量,在这里只能使用,并不能修改,但 a 并不一定真的是一个 const 。 指针常量 和 常量指针   这应该是C++面试和笔试中经常考到的一个知识点。 指针常量 int * const q = 10 ; // q is const *q = 20 ; // OK q++; // ERROR 指针常量,在上面的代码中,q是常量,指向的地址是不能变化的,但指向地址中的内容是可以改变的。 常量指针 int a = 10 ; int b = 20 ; const int *p = &a; // *p is const *p = 15 ; // ERROR a = 30 ; // OK p = &b; // OK 常量指针,在上面的例子中,( p)是常量,我们不能通过( p)来改变指向的对象即a;但a本身是可以改变的,而且p也是可以指向别处的。

一名 双非本科小菜鸟 的 2020 游戏研发 秋招 感悟与总结

人走茶凉 提交于 2021-01-02 05:24:38
一名 双非本科小菜鸟 的 2020 游戏研发 秋招 感悟与总结 2019年秋招过半(其实10月份差不多可以说已经结束了),所以写下这篇文章,简单的总结一下这次秋招历程,顺便思考一下接下来需要做的事。 自我介绍 简单介绍下我自己,emmm,我是一个双非本科出身(勉强算是科班(计科)出身把,为啥勉强算是。。因为感觉学校压根没教什么理论性的东西,没教过编译原理,没教过线代,不过大部分其实也纯靠自学把),并且还是,emm最为尴尬的应用型本科,就是那种在高职院培养,毕业拿本科证书的那种。就应聘的时候还得专门跟hr解释我不是专科是本科的尴尬专业(当时高考确实是脑抽了报这个....本来分数线能上个普通二本的,这样跟hr说的时候就不用这么尴尬了啊啊啊)(不过学校其实还是帮了我挺多的)。 额,好像一下子说了很多情绪话,简单总结下我自己的情况把。 博主对自己的算法和数据结构还算自信把,大概可以在40分钟内搞定一道LeetCode的Hard题目(是很菜。。不过跟我其他技能比起来,我对算法还是稍微自信一点点的)。在学校也跟老师出去打过不少算法比赛(都是不算特别高端的那种,比如蓝桥杯啥的),有过一点奖。 我在学校算是个特别喜欢折腾的人,学过后端的ssh、ssm,前端的vue、爬虫的scrapy之类的,后面发现我还是喜欢做游戏,于是就开心的学起了U3D和OpenGL。 感觉我的基础一般般