面试题
文章平均质量分 66
哈维先生
这个作者很懒,什么都没留下…
展开
-
面试题:不使用+-*/进行加法运算
使用位运算进行计算。int add(int m, int n){ int sum = 0; int carry =0; do { sum = m^n; carry = (m&n)<<1; m = sum; n = carry; }原创 2013-12-11 11:05:33 · 756 阅读 · 0 评论 -
面试题:字符串
字符串是若干字符组成的序列。由于字符串在编程时使用的频率非常高,为了优化,很多语言都对字符串进行了优化。C/C++中每个字符串都以字符‘\0’为结尾,这样就可以很方便地查到字符串的最后尾部。为了节省内存,C/C++把常量值保存在单独的一个内存区域。当几个指针赋值给相同的常量字符串时,它们实际上会指向相同的内存地址。如果用常量内存初始化字符串数组,会为它们分配两个长度为n的空间,并把常量值分原创 2013-12-13 09:03:36 · 141 阅读 · 0 评论 -
C++面试题
类1. 定义一个空类型,里面没有任何成员变量和成员函数,对该类型求sizeof,得到的结果是什么?答:结果是1。空类型的实例中不包含任何信息,但是当我们声明该类型时,它必须在内存中占有一定的空间,否则无法使用这些实例。至于占用多少空间,由编译器决定。Visual Studio中每个空类型的实例占有1字节的空间。2.如果在一个空类型中添加一个构造函数和析构函数,再对该类型原创 2013-12-05 08:18:24 · 125 阅读 · 0 评论 -
面试题:概率统计
1.求自然数0-1000000中1出现的次数?考虑六位字符000000-999999,共有字符 6位*1000 000个数=6 000 000个字符。0-9这是个字符等概率出现,因此0-9的个数都为6 000 000/10=600 000个。由于前导0不影响1-9的个数,因此自然数0-999 999中1-9的次数均为6 000 000。加上1000000中的那个1,因此最终答案为600原创 2013-12-11 16:56:22 · 260 阅读 · 0 评论 -
面试题:二叉树
二叉树的高度int BinaryTreeHeight(ListNode * node){ if(node == NULL) { return 0; } LeftHeight = BinaryTreeHeight(node->left); RightHeight = BinaryTreeHeight(node->原创 2013-12-18 18:59:25 · 103 阅读 · 0 评论 -
面试题:链表
链表反转注意三个问题:1. 需要注意头节点的处理;2. 需要注意尾节点的处理;3. 需要链表不要断开。void reverse(ListNode * head){ ListNode * newHead = null; ListNode * node = head; ListNode * preNode = null; while原创 2013-12-09 15:49:18 · 95 阅读 · 0 评论 -
面试题:关于数组
矩阵中的查找在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个函数,判断数组中是否含有该函数。bool Find(int *matrix, int rows, int columns, int index, int number ){ if(rows>index || columns<0)原创 2013-12-18 18:38:34 · 116 阅读 · 0 评论 -
大数据处理面试汇总
1. 给定a、b两个文件,各存放50亿个url,每个url各占64字节,内存限制是4G,让你找出a、b文件共同的url? 方案1:可以估计每个文件安的大小为50G×64=320G,远远大于内存限制的4G。所以不可能将其完全加载到内存中处理。考虑采取分而治之的方法。 s 遍历文件a,对每个url求取 ,然后根据所取得的值将url分别存储到1000个小文件(记为 )中。这样每个转载 2014-03-05 22:25:21 · 656 阅读 · 0 评论 -
字符串题目
1,小写变换为大写chr-'a'+'A'2.原创 2014-03-06 10:40:05 · 121 阅读 · 0 评论