面试

《百面机器学习算法工程师带你去面试》高清PDF及epub+《美团机器学习实践》PDF及思维导图

跟風遠走 提交于 2020-11-27 05:24:30
http://blog.sina.com.cn/s/blog_ecd882db0102yuek.html 《百面机器学习算法工程师带你去面试》高清PDF及epub+《美团机器学习实践》PDF及思维导图 (2019-01-13 13:01:11) 转载 ▼ 标签: 机器学习实践 美团机器学习 百面机器学习 大规模 特征工程 分类: 机器学习 人工智能领域正在以超乎人们想象的速度发展,从日常工作、生活中各种有趣的现象出发,不仅囊括了机器学习的基本知识 ,而且还包含了成为出众算法工程师的相关技能,更重要的是凝聚了笔者对人工智能领域的一颗热忱之心,旨在培养读者发现问题、解决问题、扩展问题的能力,建立对机器学习的热爱,共绘人工智能世界的宏伟蓝图。 “不积跬步,无以至千里”,从特征工程、模型评估、降维等经典机器学习领域出发,构建一个算法工程师必-备的知识体系;见神经网络、强化学习、生成对抗网络等新科研进展之微,知深度学习领域胜败兴衰之著;“博观而约取,厚积而薄发”。 个人感觉是一本很棒的书,注重公式推导和概念阐述,有些实践应用多年才会有的思考,里面的很多问题也很有意思,第一次发现原来可以通过这个角度重新思考。作者是做了多年机器学习相关工作的,书写的比想象的好多了。 学习参考: 《百面机器学习算法工程师带你去面试》高清PDF版,392页,带书签目录,文字可以复制;

【高并发解决方案】高并发解决方案汇总

纵饮孤独 提交于 2020-11-27 05:23:10
【高并发解决方案】1、高并发解决方案汇总 一、对于被频繁调用,更新频率较低的页面,可以采用HTML静态化技术 二、图片服务器分离 三、数据库集群和库表散列 mysql主从。m-m-s-s-s...(2个主,多个从。多个从使用负载均衡。主写入数据,从读取数据) 四、缓存。众多的缓存框架 五、负载均衡。nginx,lvs,F5 六、搜索用单独的服务器,搜索框架 七、使用MQ服务器 【高并发解决方案】2、集群概述 1.什么是集群 集群是一组协同工作的服务实体,用以提供比单一服务实体更具扩展性与可用性的服务平台。在客户端看来,一个集群就像是一个服务实体,但 事实上集群由一组服务实体组成。 2.集群的特性 与单一服务实体相比较,集群提供了以下两个关键特性: 1.可扩展性--集群的性能不限于单一的服务实体,新的服 务实体可以动态地加入到集群,从而增强集群的性能。 2. 高可用性--集群通过服务实体冗余使客户端免于轻易遇到out of service的警告。在集群中,同样的服务可以由多个服务实体提供。如果一个服务实体失败了,另一个服务实体会接管失败的服务实体。集群提供的从一个出 错的服务实体恢复到另一个服务实体的功能增强了应用的可用性。 为了具有可扩展性和高可用性特点,集群的必须具备以下两大能力: (1) 负 载均衡--负载均衡能把任务比较均衡地分布到集群环境下的计算和网络资源。 (2)

Java面试题汇总

六眼飞鱼酱① 提交于 2020-11-27 04:45:19
1、有序数组排序,二分,复杂度 2、快排的时间复杂度,冒泡时间复杂度,快排是否稳定,快排的过程 3、有N个节点的满二叉树的高度。1+logN 4、朋友之间的点对点关系用图维护,怎么判断两人是否是朋友,并查集,时间复杂度,过程。 5、单元点最短路的方法,时间复杂度 6、如何实现关键字输入提示,使用字典树,复杂度多少,有没有其他方案,答哈希,如果是中文呢,分词后建立字典树? 7、hashmap的实现讲一下吧,讲的很详细了。讲一下红黑树的结构,查询性能等。 8、Java中的垃圾回收讲一下,讲了分代,gc算法,gc root可达性分析等 9、讲一下两个项目你都做了什么吧。 10、除了代码之外你还学习了什么技术,框架。 11、死锁是怎么产生的 12、线程和进程的区别 13、进程的通信方式 14、CPU的执行方式 15、代码中遇到进程阻塞,进程僵死,内存泄漏等情况怎么排查。通过ps查询状态,分析dump文件等方式排查。 16、Linux了解么,查看进程状态ps,查看cpu状态 top。查看占用端口的进程号netstat grep 17、10g文件,只有2g内存,怎么查找文件中指定的字符串出现位置。MapReduce分割文件处理 18、100w个数,怎么找到前1000个最大的,堆排序,怎么构造,怎么调整,时间复杂度。 19、一个矩阵,从左上角到右下角,每个位置有一个权值。可以上下左右走

java面试题汇总,不断更新中。。。

大兔子大兔子 提交于 2020-11-27 04:33:11
JVM,并发,锁相关: 1.请你谈谈对volatile的理解,volatile是否存在伪共享问题。 2.cas你知道吗? 3.原子类AtomicInteger的ABA问题谈谈?原子更新引用知道吗? 4.公平锁/非公平锁/可重入锁/递归锁/自旋锁谈谈你的理解?请手写一个自旋锁。 5.CountDownLatch、CyclicBarrier、Semaphore使用过吗? 6.阻塞队列知道吗? 7.死锁编码及定位分析? 8.java中的逃逸分析了解吗? 9.synchronized的原理,你了解锁膨胀吗? 10.reentranLock原理,和synchronized的区别 JAVA基础: 1.java中有哪几种基础数据类型? 2.char为何是两个字母? 3.Object有哪些方法? 4.final修饰变量,函数,类的作用 5.为什么覆盖equals的时候必须覆盖hashCode 数据类型及算法: 1.ArrayLsit的父类有哪些 2.我们都知道ArrayList是线程不安全的,请编码写一个不安全的案例并给出解决方案? 反射: 1.反射应用场景,优缺点 多线程: 1.自定义线程池的参数及意义 2.当线程池不断接收新任务,活跃线程数怎么变化。 3.线程池用过吗?ThreadPoolExecutor谈谈你的理解? 4.生产上你是如何设置合理参数? 5.线程池的四种拒绝策略 6.同步/异步

JAVA高级面试总结-JVM篇

断了今生、忘了曾经 提交于 2020-11-27 02:57:42
1.Sun HotSpot VM,是JDK和Open JDK中自带的虚拟机,也是目前使用范围最广的Java虚拟机。 2.JVM内存分布 程序计数器:是一块较小的内存空间,可以看作是当前线程所执行的字节码的行号指示器。程序中的分支、循环、跳转、异常处理、线程恢复等基础功能都需要依赖这个计数器完成。由于多线程是通过线程轮流切换并分配处理器执行时间的方式来实现的,故该区域为线程私有的内存。 虚拟机栈:描述的是Java方法执行的内存模型,用于存储局部变量表、操作数栈、动态链接、方法出口等 堆:是Java虚拟机所管理的内存中最大的一块,Java堆是被所有线程共享的一块内存区域,在虚拟机启动时创建,存放所实例,也是垃圾收集器管理的主要 方法区:用于存放已被虚拟机加载的类信息、常量、静态变量、即时编译后的代码等数据。HotSVM针对该区域也进行GC,主要是常量回收以及类 3.JVM内存分配策略 对象的内存分配,在大方向上,是在Java堆上进行分配。 大多数情况下,对象在新生代Eden区中分配,当Eden区没有足够空间进行分配时,虚拟机将发起一次Minor GC。 大多数情况下,大对象直接进入老年代,虚拟机提供了参数来定义大对象的阀值,超过阀值的对象都会直接进入老年代。 经过多次Minor GC后仍然存活的对象(长期存活的对象),将进入老年代。虚拟机提供了参数,可以设置阀值。 4

「上海名媛群」文章发表后,小红书上的名媛全都遭殃了

夙愿已清 提交于 2020-11-27 02:30:57
点击 蓝色字 免费订阅, 每天收到这样的好信息 前言 : 最近有不少粉丝关注本公众号。并且我已经 成功开通了流量主同时会赚一点点广告费,我打算每个月把这部分钱拿出来给大家买点书刊,算是给大家一点福利吧。大家想买什么书扫描下方的加他拉你加群。最后,非常感谢大家的关注。 最近很火的「上海名媛群」文章中低价拼顶级下午茶、酒店、奢侈品的现象,现在小红书上的名媛全都遭殃了。快要乐死我了。大家可以点开小红书,关键词搜:宝格丽打卡。直接看评论区,十分精彩。 打油诗 我不在乎我的作品文章是被现在的人读还是由子孙后代来读。既然上帝花了六千年来等一位观察者,我可以花上一个世纪来等待读者。 永久激活方案~ 2020-07-29 spring 状态机 2020-05-12 mybatis用到的设计模式 2020-07-02 jvm高级面试题(必须看) 2020-07-23 MySQL索引实现原理分析 2020-05-19 Spring中的用到的设计模式 2020-04-23 Spring 和 SpringBoot 之间到底有啥区别? 2020-05-29 如何快速搭建一个免费的 鉴黄 平台 2020-08-15 美国也就那么回事吧 2020-08-15 5T的Java视频教程全部免费获取 2020-08-14 本文分享自微信公众号 - Java小白学心理(gh_9a909fa2fb55)。 如有侵权

软件测试常见面试题

喜你入骨 提交于 2020-11-27 02:27:45
软件测试面试题(一) 软件的生命周期(prdctrm) 计划阶段(planning)-〉需求分析(requirement)-〉设计阶段(design)-〉编码(coding)->测试(testing)->运行与维护(running maintrnacne) 测试用例 用例编号  测试项目  测试标题  重要级别  预置条件  输入数据  执行步骤   预期结果 1 、问:你在测试中发现了一个bug ,但是开发经理认为这不是一个bug ,你应该怎样解决? 首先,将问题提交到缺陷管理库里面进行备案。 然后,要获取判断的依据和标准: 根据需求说明书、产品说明、设计文档等,确认实际结果是否与计划有不一致的地方,提供缺陷是否确认的直接依据; 如果没有文档依据,可以根据类似软件的一般特性来说明是否存在不一致的地方,来确认是否是缺陷; 根据用户的一般使用习惯,来确认是否是缺陷; 与设计人员、开发人员和客户代表等相关人员探讨,确认是否是缺陷; 合理的论述,向测试经理说明自己的判断的理由,注意客观、严谨,不参杂个人情绪。 等待测试经理做出最终决定,如果仍然存在争议,可以通过公司政策所提供的渠道,向上级反映,并有上级做出决定。 2 、问:给你一个网站,你如何测试? 首先,查找需求说明、网站设计等相关文档,分析测试需求。 制定测试计划,确定测试范围和测试策略,一般包括以下几个部分:功能性测试;界面测试

Linux运维用户管理有哪些面试题?Linux知识点

一曲冷凌霜 提交于 2020-11-27 01:44:27
​ Linux系统是个多用户系统,能做到不同的用户能同时访问不同的文件,因此一定要有文件权限控制机制。Linux系统的权限控制机制和 Windows的权限控制机制有着很大的差别。Linux运维学习中,用户管理有哪些面试题需要掌握?看老男孩教育Linux培训如何说。 1 选择 1.1 增加一个新用户admin,权限是root? useradd -u 0 -o admin useradd -g 0 -o admin useradd -g 1 -o admin useradd -u 1 -o admin 1.2 普通用户的ID一般是() =100 =500 =1000 =0 1.3 增加一个用户的命令是() useradd usermod groupadd userdel 1.5 (多选)Linux的非root用户,在自己的目录中,不可以删除非空目录dirs的方法是: rm dir dirs. rm -r dirs. mv dirs /dev/null destroy dirs 1.6 要查看当前unix系统中有哪些用户,可以查看以下哪个文件? profile passwd env boot 1.7 改变文件所有者的命令为_____ chmod touch chown cat 1.8 sudo根据文件_____判断谁是授权的用户 /etc/sudo /etc/sudoers /etc

Linux命令有哪些知识点需要掌握?Linux面试题

拥有回忆 提交于 2020-11-27 00:06:20
  随着云计算、大数据和人工智能的迅速发展,Linux技术收到了很大的推动。越来越多的人们开始学习Linux技术,转行成为Linux运维工程师。那么不可避免的就是找工作时都要经历面试。那么关于Linux工具、Linux命令有哪些相关知识点需要谨记呢?   1选择   1.1一个文件的名字为rr.Z,可以用来解压缩的命令时()   tar   gzip   compress   uncompress   1.2可以结束进程命令()   kill   ctrl+c   shutdown   halt   1.3 Linux下对文件进行归档的命令为:(多选)   dd   tar   zip   unzip   1.4 Linux查当前目录下30天以前的文件并移动到/dev/null下的命令:(多选)   find.-mtime 30-type f xargs mv{}/dev/null;   find.-mtime+30-type xargs mv{}/dev/null;   find.-mtime+30-type f-exec mv{}/dev/null;   find.-mtime+30-type f-exec rm–rf{};   1.5 dstat与下面哪个命令类似   vmstat   sar   iotop   abc   1.6 rpm安装软件的参数   rpm-ivh

技术选型指南

核能气质少年 提交于 2020-11-26 17:53:19
文章转载自:ThoughtWorks洞见 作者:汪志成 这是一篇综合类技术选型指南,试图为你提供一份比较通用的技术选型思维框架。当你需要进行技术选型时,可以参照它来设计自己的决策树。这其中你需要考虑的主要维度包括目标产品、目标用户、目标团队和技术本身,下面我将分别细述,并在此基础上介绍一些反模式。 维度 目标产品 这是最重要的维度。产品本身的特征将影响技术选型时的很多因素。 短生命周期产品和长生命周期产品 短生命周期的产品通常要求快速起步:门槛低、书写 自由、不强制遵循任何最佳实践。当它的使命结束时,代码会被直接抛弃。所以,对于这类产品,“ 快糙猛 ”的技术是较好的选择,当然,能做到“ 快精猛 ”更佳。 而长生命周期的产品则会强烈要求可维护性,因为它们在很长时间内都是不可报废的。甚至对于一些生命线产品,连重写都会要求在重写期间线上系统平稳过渡,一点点迁移到新技术。 这种要求对团队的工程化能力是个极端的考验。如果没有相应的工程能力,其代价甚至会高于用新技术重新写一个功能相同的系统。 探索型的产品和守成型的产品 探索型产品往往也是短周期产品,但是同时也有自己的特点。它要求快速,但往往同时会要求高质量。探索型的产品如果证明了可行性,那么过渡到长生命周期的可能性很大。 这就要求它最好是一个微内核系统,提前留出一些扩展的空间。当然,设计微内核系统对架构师的能力具有相当的考验