【面试知识点】
文章平均质量分 59
sunshine0625
只要每天不在原地,就好
展开
-
提取出某日访问百度次数最多的IP
问题:海量日志数据,提取出某日访问百度次数最多的那个IP。 解决办法: 1.数据量太大,采用“分而治之(hash映射)”的策略 2.将大数据根据hash法映射到不同的小文件中 3.hash map(key,value)统计每个key的的出现次数(针对划分后的小文件操作),并返回小文件中最大的一条map值 4.在所有小文件中找到最大的map值,就是最终要的访问次数最多的ip值。 注:代码原创 2016-03-24 16:25:44 · 574 阅读 · 0 评论 -
pagerank原理总结
1.pagerank算法概述 又名网页排名,是Google创始人拉里·佩奇和谢尔盖·布林于1997年构建早期的搜索系统原型时提出的链接分析算法,自从Google在商业上获得空前的成功后,该算法也成为其他搜索引擎和学术界十分关注的计算模型。 核心思想:如果一个网页被很多其他网页所链接,说明它受到普遍的承认和信赖,那么它的排名就越高。 2.pagerank基本思想 如果网页T存在一个指向网原创 2016-08-16 14:13:06 · 10869 阅读 · 0 评论 -
【数组3】连续子数组的最大和
题目:找到数组1 -2 3 10 -4 7 2 -5中的最大和 思路: (1)如果前面的和为负值,则加上会使得sum (2)动态规划方法--递归 设sum[i] 为前i个元素中,包含第i个元素且和最大的连续子数组,result 为已找到的子数组中和最大的。对第i+1个元素有两种选择:做为新子数组的第一个元素、放入前面找到的子数组。 sum[i+1] = max(a[i+1]原创 2016-08-31 18:37:01 · 310 阅读 · 0 评论 -
【数组2】数组中出现次数超过一半的数
思路:考虑数组本身的特性 特点:出现次数超过一半的数==该数出现的次数比其他所有数出现的次数都多。 方法:遍历数组,保存两个值,一个是数字,一个是数字出现的次数 时间复杂度:O(n) def searchHalfNum(array): if len(array)==0: return -1 temp=array[0] num=1 for i in rang原创 2016-08-31 15:11:33 · 229 阅读 · 0 评论 -
【数组1】旋转数组 找最小值 找指定值
1.一个有序数组1,2,3,4,5,6,7,8,9,但是被截断处理了,变成了5,6,7,8,9,1,2,3,查找数组的最小值(旋转数组求最小值) 最小元素位于end-start==1的位置 循环条件是array[start]>array[end] 特殊情况: (1)旋转0个元素,第一个元素是最小值,因此mid初始值为start (2)1 0 1 1 1,只能采用按顺序查找的方法 d原创 2016-08-31 13:40:45 · 750 阅读 · 0 评论 -
【数组4】数字在排序数组中出现的次数
题目:1,2,3,3,3,3,4,5 当key=3时返回4 思路:二分查找 (1)找到key在数组中出现的开始位置和结束位置,用二分查找法 时间复杂度:O(logn) def searchFirst(array,key): start=0 end=len(array)-1 while(start <= end): mid=(start+end)/原创 2016-08-31 18:41:11 · 215 阅读 · 0 评论 -
【字符串1】反转单词顺序
反转单词顺序(句子反转,但单词不反转) i am a student.---->student. a am i 思路: (1)反转所有字符 (2)反转每个单词(判断单词是用双指针) public class stringAbout { //翻转 public static char[] reverse(char[] str,int start,int end){ if(str.l原创 2016-09-01 19:18:12 · 574 阅读 · 0 评论 -
【网络】从输入url到获取页面的完整过程
1.查询DNS(域名解析),获取域名对应的IP地址 查询浏览器缓存(浏览器会缓存之前拿到的DNS 2-30分钟时间),如果没有找到,检查系统缓存,检查hosts文件,这个文件保存了一些以前访问过的网站的域名和IP的数据。它就像是一个本地的数据库。如果找到就可以直接获取目标主机的IP地址了。没有找到的话,需要检查路由器缓存,路由器有自己的DNS缓存,可能就包括了这在查询的内容;如果没有,要查询原创 2016-09-22 23:47:20 · 2172 阅读 · 0 评论 -
【网络】面试中遇到的网络相关问题
1.http和https的区别: HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。 HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。 HTTPS原创 2016-09-24 12:36:04 · 516 阅读 · 0 评论