面试与面试题解析
sanwan
这个作者很懒,什么都没留下…
展开
-
剑指offer--反转链表
题目:输入一个链表,反转链表后,输出反转链表后头节点 思路1: 扫描 即开始翻转,直到文件结束 返回最后一个指针。 代码如下: /*struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } };*/ class Solution { public: Li原创 2015-05-31 18:30:17 · 546 阅读 · 0 评论 -
剑指offer--求链表的倒数第k个结点
题目:输入一个链表,输出该链表中倒数第k个结点 思路1 : 求出数组元素的个数count,然后向前扫描count-k个元素 代码如下: /* struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } }; */ c原创 2015-05-30 20:52:33 · 552 阅读 · 0 评论 -
剑指offer---重建二叉树
题目: 输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并输出它的后序遍历序列。 思路:前序遍历数组第一个值为根节点,在中序遍历中找到根节点的位置i i前面的为根节点的左子树,后面的为右子树,记录左右子树原创 2015-05-30 17:58:27 · 545 阅读 · 0 评论 -
剑指offer--两个栈生成队列
题目:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 思路: 进栈函数直接让stack1进栈 出栈时,当stack2 不为空时,pop stack2, 为空时,把stack1的内容复制给stack2,当二个栈为空时,队列为空 代码如下: class Solution { public:原创 2015-05-30 19:59:11 · 552 阅读 · 0 评论 -
聊聊面试中的二进制运算
最近在网上看了《剑指offer》上面的题目,遇到了一类关于二进制运算的问题,记下来与大家分享 题目:实现一个函数,输入一个整数,输出该数二进制表示中1的个数。例如把9表示成二进制是1001,有2位是1.因此如果输入9,该函数输出2。注意,负数要用补码的形式表示 1 移位解法:通常我们会采取循环移位的方式进行筛选,但要注意,当输入为负数时,移位补位为1,这样会使程序没有终点,始终运行。其实原创 2015-05-07 00:02:15 · 764 阅读 · 0 评论 -
经典面试题---寻找特殊字符
本文参考微信号为 待字闺中的信息,欢迎大家guan原创 2014-10-12 10:33:20 · 703 阅读 · 0 评论 -
经典面试题-- 排序算法(一)
排序算法shiwoem原创 2014-09-28 10:57:52 · 757 阅读 · 0 评论 -
经典面试题--字符串转换,复制,倒置
1 怎样用整数转换为字符串原创 2014-09-25 15:30:57 · 1004 阅读 · 0 评论 -
经典面试题--统计数组
本文参考 微信号为:待字闺中 的信息,感兴趣的可以jia原创 2014-09-22 14:14:41 · 796 阅读 · 0 评论 -
经典面试题--字符串系列(二)--找出第一个出现一次的字符
题目:在字符串中找出第一个出现一次的字符串,如输入“”原创 2014-09-20 10:29:09 · 1081 阅读 · 0 评论 -
经典面试题---字符串系列(一)---删除字符串
题目:删除字符串中的"b"和原创 2014-09-18 09:43:12 · 941 阅读 · 0 评论 -
2013小米招聘面试题
一、填空题(5分每题,一共8题) 1、两个人A(速度为a)、B(速度为b)在一直路上相向而行。在A、B距离为s的时候,A放出一个鸽子C(速度为c),C飞到B后,立即掉头飞向A,遇到A在掉头飞向B......就这样在AB之间飞来飞去,直到A、B相遇,这期间鸽子共飞行路程为? 答案是:s*c/(a+b) 2、(he)的平方=she。h、e、s代表的数字? 答案是:分别代表2、5、6转载 2014-05-21 12:19:17 · 827 阅读 · 0 评论 -
剑指offer--顺时针打印矩阵
题目:输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1,2,3,4,8,12,16,15,14,13,9,5,6,7,11,10 思路1 :使用递归思想,先打印最外层矩阵,然后依次打印里面的矩阵,直到矩阵行数为 1 或列数为1 或为空时,终止递归条件原创 2015-06-02 06:50:48 · 523 阅读 · 0 评论