
面试
文章平均质量分 85
大树叶
宠辱不惊,看庭前花开花落;去留无意,望天空云卷云舒。
展开
-
小议LRU算法的实现
LRU原理LRU(Least Recently Used)是一种常见的页面置换算法,原理就是,当数据在最近一段时间经常被访问,那么它在以后也会经常被访问。这就意味着,如果经常访问的数据,我们需要然其能够快速命中,而不常访问的数据,我们在容量超出限制内,要将其淘汰。LRU的实现对于这种类似序列的结构我们一般可以选择链表或者是数组来构建。1. 数组 查询比较快,但是对于增删来说是一个不是一个好的选择。2. 链表 查询比较慢,但是对于增删来说十分方便O(1)时间复杂度内搞定。我们可以选择 .转载 2021-02-26 01:00:40 · 172 阅读 · 0 评论 -
Cracking the coding interview
转自:http://hawstein.com/posts/ctci-solutions-contents.htmlCracking the coding interview--问题与解答March 14, 2013作者:Hawstein出处:http://hawstein.com/posts/ctci-solutions-contents.html声明:本文采用原创 2016-02-16 15:54:29 · 1765 阅读 · 0 评论 -
Java笔试题目知识点汇总
Java基础方面:0、作用域public,private,protected,以及不写时的区别作用域当前类同一包子孙类其他包public√√√√protected√√√×friendly√√××private√×××原创 2016-02-17 14:38:28 · 1508 阅读 · 0 评论 -
Company A面试 笔试 : 爬山 算步骤 问题 另外一种解法
/* somebody go from A (0,0) to B (0,D) via many mountains which use tri-tuple . * this guy must be walk up when arriving at mountains and climb down when leave this mountain. * Here 这里山的坐标会交叉或者原创 2015-12-13 15:05:41 · 650 阅读 · 0 评论 -
华为面试题:交换两个数组,使得数组的和的差最小
/* * question: 华为面试题:交换两个数组的部分元素,使得这两个数组的和的差最小。 * Author: hongbin *//* 9 11 18 19 merge sorted ->19 18 11 9 8 7 4 1 after selection,data list -> 19 9 8 4 18 11 7 1 */原创 2015-12-13 14:31:39 · 1043 阅读 · 0 评论 -
Company BDui 面试 笔试 : 从10个已按从大到小排列好的数组中,求top 15个最大的数
/* * File: bai D company: 从10个已按从大到小排列好的数组中,求top 15个最大的数 * Author: hongbin */#include #include #include #include using namespace std;//array must be descending sorted whe原创 2015-12-13 14:03:46 · 938 阅读 · 0 评论 -
Company TengX 面试 笔试 : 打印 二叉树 指定值的所有路径
/* * File: 打印二叉树指定值的所有路径.cpp * Author: hongbin * */#include #include using namespace std;/* * */typedef struct treenode {int value;struct treenode* left;struct原创 2015-12-13 13:15:01 · 513 阅读 · 0 评论 -
Company A面试 笔试 : 完全二叉树,三叉树的最小公共父节点问题
如果是2叉树,那又如何编程?以下是个人代码,调试通过并有注释/* * * Author: Bigtree * * Created on */ #include #include #include #include using namespace std; long int NodesPerL原创 2015-12-13 12:46:58 · 979 阅读 · 0 评论 -
2014 一美国视频公司面试题目
#include #include #include using namespace std;void StatSortNum(int data[], int length) {if(NULL==data || length ==0) return;int HASHSIZE=11;int * hash= new int[HASHSIZE];for(int i原创 2014-12-12 12:16:39 · 708 阅读 · 0 评论 -
2012 亚马逊在线笔试题目1
amazon online test 亚马逊 在线 考试 题目 进栈出栈问题原创 2014-12-12 11:59:37 · 1097 阅读 · 0 评论 -
亚马逊面试题目 最小的回文正整数
题目要求:给定正整数 N,求其 下一个最小的回文正整数。比如,N=9,则下一个所求之数为11。又如N=12444,则下一个所求之数为12521. 下面给出了两种实现方法原创 2014-12-12 11:20:33 · 696 阅读 · 0 评论 -
HashMap实现原理分析
1. HashMap的数据结构数据结构中有数组和链表来实现对数据的存储,但这两者基本上是两个极端。 数组数组存储区间是连续的,占用内存严重,故空间复杂的很大。但数组的二分查找时间复杂度小,为O(1);数组的特点是:寻址容易,插入和删除困难;链表链表存储区间离散,占用内存比较宽松,故空间复杂度很小,但时间复杂度很大,达O(N)。链表的特点是:寻址困难,插入和删除容易。原创 2016-03-09 00:33:36 · 395 阅读 · 0 评论 -
精选30道Java笔试题解答
都是一些非常非常基础的题,是我最近参加各大IT公司笔试后靠记忆记下来的,经过整理献给与我一样参加各大IT校园招聘的同学们,纯考Java基础功底,老手们就不用进来了,免得笑话我们这些未出校门的孩纸们,但是IT公司就喜欢考这些基础的东西,所以为了能进大公司就~~~当复习期末考吧。花了不少时间整理,在整理过程中也学到了很多东西,请大家认真对待每一题~~~ 下面都是我自己的答案非官方,仅供参考,如转载 2016-04-05 00:11:40 · 433 阅读 · 0 评论 -
java中fail-fast 和 fail-safe的区别
在我们详细讨论这两种机制的区别之前,首先得先了解并发修改。1.什么是同步修改?当一个或多个线程正在遍历一个集合Collection,此时另一个线程修改了这个集合的内容(添加,删除或者修改)。这就是并发修改2.什么是 fail-fast 机制?fail-fast机制在遍历一个集合时,当集合结构被修改,会抛出Concurrent Modification Exception。fai转载 2016-04-05 21:58:27 · 667 阅读 · 0 评论 -
java多线程编程之捕获子线程异常示例
java多线程程序中所有线程都不允许抛出未捕获的checked exception,也就是说各个线程需要自己把自己的checked exception处理掉。但是无法避免的是unchecked exception,也就是RuntimeException,当抛出异常时子线程会结束,但不会影响主线程.通过try catch是无法捕获子线程异常的,Thread对象提供了转载 2016-04-05 22:27:10 · 1599 阅读 · 0 评论 -
JDK5_Thread的run异常的setUncaughtExceptionHandler处理
Thread的run方法是不抛出任何检查型异常(checked exception)的,但是它自身却可能因为一个异常而被终止,导致这个线程的终结。最麻烦的是,在线程中抛出的异常即使使用try...catch也无法截获,因此可能导致一些问题出现,比如异常的时候无法回收一些系统资源,或者没有关闭当前的连接等等。JDK5.0之前,不能为单独的Thread设置UncaughtException转载 2016-04-05 22:31:06 · 1087 阅读 · 0 评论 -
115个Java面试题和答案——终极列表 (上)
http://www.importnew.com/10980.html本文我们将要讨论Java面试中的各种不同类型的面试题,它们可以让雇主测试应聘者的Java和通用的面向对象编程的能力。下面的章节分为上下两篇,第一篇将要讨论面向对象编程和它的特点,关于Java和它的功能的常见问题,Java的集合类,垃圾收集器,第二篇主要讨论异常处理,Java小应用程序,Swing,JDBC,远程方法调用(转载 2016-04-25 21:35:04 · 505 阅读 · 0 评论 -
115个Java面试题和答案——终极列表(下)
http://www.importnew.com/11028.html点击打开链接本章主要讨论异常处理,Java小应用程序,Swing,JDBC,远程方法调用(RMI),Servlet和JSP。异常处理Java小应用程序(Applet)SwingJDBC远程方法调用(RMI)ServletJSP异常处理43.Java中的两种异常类型是什么?他们有什么区别转载 2016-04-25 21:36:46 · 357 阅读 · 0 评论 -
2013年阿里巴巴一道笔试题(大文件处理)
现有一个亿级别数据量的文件,其中有按key升序的记录,现要求通过输入key查找对应的记录。对于这种大文件读取,在读取时一般要采用内存文件映射, 另外,通常的处理操作就是对文件进行分隔。 把文件分隔为若干小文件后,记录下每个小文件中最小的key值,然后把输入值与这些key值依次比较便可以找到key对应的记录所在的小文件,然后把小文件读入内存,进行二分查找。下面是所有的程序代码,为方便转载 2016-04-25 23:50:12 · 504 阅读 · 0 评论 -
约瑟夫环
JD面试:问题: n个人围成一个圆圈,从1到3开始报数,报到3的人出去,这样一直循环,直到只剩下一个人。问剩下的人在开始报数之前的编号?当时我想的是直接用循环链表来模拟整个报数的过程,即构造一个n个数的循环链表,进行循环遍历,每当数到3时删除当前指向的节点,直到剩下最后一个。但是该算法比较复杂,肯定还有简单的算法。约瑟夫环:递归算法假设下标从0开始,0,1,2 .. m原创 2016-04-26 21:49:59 · 431 阅读 · 0 评论 -
复合索引如何用
JD面试:复合索引如何用索引可以包含一个、两个或更多个列。两个或更多个列上的索引被称作复合索引。利用索引中的附加列,您可以缩小搜索的范围,但使用一个具有两列的索引不同于使用两个单独的索引。复合索引的结构与电话簿类似,人名由姓和名构成,电话簿首先按姓氏对进行排序,然后按名字对有相同姓氏的人进行排序。如果您知道姓,电话簿将非常有用;如果您知道姓和名,电话簿则更为有用,但如果您只知道名不姓,原创 2016-04-26 23:29:39 · 8370 阅读 · 0 评论 -
教你如何迅速秒杀掉:99%的海量数据处理面试题
http://blog.youkuaiyun.com/v_july_v/article/details/7382693前言 一般而言,标题含有“秒杀”,“99%”,“史上最全/最强”等词汇的往往都脱不了哗众取宠之嫌,但进一步来讲,如果读者读罢此文,却无任何收获,那么,我也甘愿背负这样的罪名,:-),同时,此文可以看做是对这篇文章:十道海量数据处理面试题与十个方法大总结的一般抽象性总结。转载 2016-04-27 20:16:54 · 825 阅读 · 0 评论 -
Bloom Filter 算法简介 (增加 Counting Bloom Filter 内容)
前言 本博客内曾已经整理过十道海量数据处理面试题与十个方法大总结。接下来,本博客内会重点分析那些海量数据处理的方法,并重写十道海量数据处理的面试题。如果有任何问题,欢迎不吝指正。谢谢。一、什么是Bloom Filter Bloom Filter是一种空间效率很高的随机数据结构,它的原理是,当一个元素被加入集合时,通过K个Hash函数将这个元素映射成一个位阵列(B转载 2016-04-27 21:20:19 · 771 阅读 · 0 评论 -
Trie的java实现
关注Trie 这种结构已经很久,Trie有一个很有趣的用途,那就是自动提示。而且,前不久在一次面试里,也需要用Trie来解答。所以,在此对这个数据结构进行总结。Trie,又称单词查找树或键树,是一种树形结构。典型应用是用于统计和排序大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:最大限度地减少无谓的字符串比较,查询效率比哈希表高。它有3个基本性转载 2016-04-28 11:20:34 · 401 阅读 · 0 评论 -
bitmap与2bitmap实现
Bitmap就是用一个bit位来标记某个元素是否存在,而2Bitmap就是用两个bit为来标记某个元素的个数,00,01,10,11(分别表示0,1,2,3,0表示不存在,1表示存在1次,后面依次)。Bitmap能用来处理下面的两个问题:(1)、在2.5亿个整数找出不重复的整数,内存不足以容纳着2.5亿个整数(2)、腾讯面试题:给40亿个不重复的unsigned int的整数,没排过序转载 2016-04-28 12:11:18 · 430 阅读 · 0 评论 -
RAID5 的那些事
一、raid什么意思?RAID是“Redundant Array of Independent Disk”的缩写,raid什么意思了?说白了,中文翻译过来通俗的讲就是磁盘阵列的意思,也就是说RAID就是把硬盘做成一个阵列,而阵列也就是把硬盘进行组合配置起来,做为一个整体进行管理,最关键的是这个阵列的磁盘之间具有冗余容错处理,这样可提高磁盘之间相互的安全性和稳定性,不存在“单点”硬盘现象,也就说原创 2016-04-29 17:10:43 · 673 阅读 · 0 评论 -
一个求迷宫入口到出口最近距离的程序 JAVA版本
本文给出一个c/c++语言版的求迷宫入口到出口的最短路径的程序。程序的大部分使用标准c语言编写,包括输入和输出。唯一用到C++库的地方是使用STL了中的deque。迷宫的宽和高,迷宫矩阵,迷宫的入口和出口等数据从文件读入。程序首先读入迷宫数据,然后更新迷宫矩阵,并求出迷宫入口和出口之间的最短路径,并输出最短路径长度。1. 迷宫的表示。迷宫用结构体MATRIX来表示包原创 2016-04-16 11:51:48 · 2673 阅读 · 0 评论 -
中序表达式变成后序表达式 JAVA实现版本
package algorithm;import java.util.*;public class ConvertMiddleOrder2PostOrder { /* * * convert middleOrder math expression to PostOrde * for example: A-B*(C+D)/E (in-order)原创 2016-04-17 16:29:19 · 912 阅读 · 0 评论 -
淘宝2012校招技术笔试题
实现五:统计一个单词可重复的英文文件(假设4G)中每个单词出现的次数,把结果按照英文排序放入一个文件中。并能够检索特定单词的出现次数。由于文件过大,不重复单词总数有限,需要考虑到执行速度和内存使用情况。(淘宝笔试技术题)import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStre转载 2016-05-03 00:49:56 · 506 阅读 · 0 评论 -
2015-2016 company 亚马逊
q1: 输入是一个城市的地图的大小(m,n),和一个list,里面包含所有有locker的地理位置。输出一个m*n的二位数组,每个单元的值为到最近locker的距离。问时间复杂度(这题要从每个locker同时开始bfs)Q2: 给一个图片,有着亮的点和黑的点,判断一共有多少个黑暗的块儿。时间复杂度。(这题我觉得相当于找出一个图中有多少个联通分量,我用bfs做的,用一个二维数组记录每原创 2016-04-19 00:32:03 · 429 阅读 · 0 评论 -
面试必备:编程之法等
《编程之法:面试和算法心得》微软面试100题2010年版全部答案集锦含下载地址转载 2016-04-18 23:48:07 · 576 阅读 · 0 评论 -
公司面试题目 打印矩阵,先往右打印,到头然后向左下打印,到头然后向左打印,最后向上打印
2014 amazon 公司面试题目 打印矩阵,1)从该矩阵的最左上点往右水平打印,到最右列后然后向左下(45°夹角)打印,到最下的一列后,再水平向左打印,到达最左一列后,最后垂直向上打印。2)再重复以上step1 动作,直到打印完所有满条件的节点。./amazon_online_matric//input5 31 2 3 4 5原创 2016-05-14 12:11:09 · 442 阅读 · 0 评论 -
2014 amazon 在线 面试题目 爬山问题:打印出从A点到B点的距离
关于那个爬山距离问题的代码说明。1)题目要求从A(0.0)到B(0,100)的距离,其中要爬过许多山。 用 来表示一座山。如果是别的数值,请修改它。2)一座山的坐标中startpoin和endpoint是否可以跟别的山可以重合成一样? 这个问题在题目里没有明确说,而且从它给的测试用例看是不重合的,故在该程序中假设没有这种重复节点的情况。原创 2016-05-14 12:17:00 · 656 阅读 · 0 评论 -
amazon 出栈 进栈 序列 题目
/* * File: amazon_onlinetest_popup.cpp * Author: hongbin * Question 2 / 2Question:As you know, two operations of Stack are push and pop. Now give you two integer arrays, one is the original ar原创 2016-05-14 12:36:26 · 587 阅读 · 0 评论 -
Amazon 笔试 :公共祖先 问题
问题描述: 算法分析: s1:层数对齐:分别求两个数所在的层(l1,l2),把层数大的(假设l2>l1)先往上找父节点,从而对齐到l1层; s2:两个数同时往上找, 直到找到公共的父节点(一定能找到,最坏情况下是0), 算法结束。 因此算法的核心就变成了如何找父节点, 求父节点的分析: 求父节点的时候,总是发现没有规律可循, 最重要的原因就是树中转载 2016-05-14 13:02:36 · 464 阅读 · 0 评论 -
amazon 笔试: 购物统计
/* * File: amazonOnline_test1.cpp * Question 1:We have an array representing customer’s shopping records.For example, it’s an array like this:custA, item1,custB, item1,custA, item2,原创 2016-05-14 13:10:20 · 677 阅读 · 0 评论 -
amazon 股票的最佳买入和卖出点
/* * File: stock_price.cpp * Author: hongbin * 给出一个股价序列,求出最佳的买入和卖出点, 也就是求序列后面的元素跟前面元素的最大值。 */#include #include #include #include #include using namespace std;//O(N^2)bool find_max_pr原创 2016-05-14 13:15:25 · 808 阅读 · 0 评论 -
亚马逊 在线笔试 2014-10-9 比较扑克牌序列
第一题:巨麻烦的一道题目,大意是比较扑克牌序列,每个序列四张牌 规则一:四张牌相同。自然数字大的胜出,比如3,3,3,3 规则二:四张牌连续。当然序列最大的那个胜出。但是有个小trick,A在这里默认表最大牌,但是如果后接2,3,4,则A表最小牌,为了获得连续序列比如A,2,3,4 规则三:有三张相同。以每个序列相同牌较大的胜出。比如3,3,3,2>2,2,2,A规则四转载 2016-05-14 16:25:52 · 562 阅读 · 0 评论 -
amazon: 大于非负整数N的第一个回文数
2014 亚马逊amazon 在线笔试题 大于非负整数N的第一个回文数 Symmetric Number1.题目 如标题,求大于整数N(N>=0)的第一个回文数的字符串表示形式。 这个题目也是当时笔试第一次见到,花了一个小时才做出了。慢慢总结还是挺简单的。2.分析 分析如下: (1)一位数N(9除外)。 第一个大于N回文数等于N+1,如大于3的转载 2016-05-14 22:22:07 · 812 阅读 · 0 评论 -
Amazon : 找出所给数字的下一个回文数
找出所给数字的下一个回文数。所给数字不一定是回文数,要找的是恰好大于这个数字的最小的回文数。/* * File: Amazon_OnlineTest_FirstBiggerPalindrome.cpp * Author: hongbin * * Created on 2014年12月5日, 下午1:12 */#include #include #include #原创 2016-05-14 16:31:50 · 1767 阅读 · 0 评论