面试算法题目
来源:互联网 发布:nat穿透软件 编辑:程序博客网 时间:2024/06/04 19:09
- 看到一篇博客,总结了各种链表相关的问题,mark一下,感觉很不错~
戳我:http://wuchong.me/blog/2014/03/25/interview-link-questions/ - 《编程之美》中“金刚坐飞机”问题:
- 《编程之美》中“瓷砖覆盖地板”问题的扩展问题:
- 《编程之美》2.3 寻找发帖水王的扩展题目-寻找发帖量最多的三个ID,他们发帖总数超过了帖子总数目N的1/4。参考:
http://blog.csdn.net/tanyujing/article/details/8622362 - 《编程之美》2.10 寻找数组中的最大值的最小值的扩展题目-找出长度为N的数组中的第二大数,需要比较多少次?分治思想能否降低比较次数。
个人认为:N次,设置两个临时变量保存最大和次大数,初始化为Integer.MIN_VALUE
,然后从头到尾扫描一遍数组,如果当前数比最大数大,次大数赋值当前最大数,最大数更新当前数。比较的次数即N次即可。 - 《编程之美》 2.20 程序理解和时间分析
给出程序段
#include <iostream>#include <limits>using namespace std;int main() { int rg[] = {2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19, 20,21,22,23,24,25,26,27,28,29,30,31}; for(__int64 i =1; i < numeric_limits<__int64>::max(); i++) { int hit = 0; int hit1 = -1; int hit2 = -1; for(int j = 0; j < sizeof(rg)/sizeof(*rg) && (hit <= 2); j++) { if((i % rg[j]) != 0) { hit++; if(hit == 1) { hit1 = j; } else if(hit == 2) { hit2 = j; } else break;//如果找到第三个不能整除的数,循环退出。 } } //如果hit不为2,就不会输出,只有满足hit为2且两个hit是连续的才输出。 if(hit == 2 && hit1+1==hit2) { cout << "find " << i << endl; break; } } return 0;}
1)上段代码主要目的是为了找出这样一个数x
, 使得数组rg
中只有两个不能被x
整除且两个不能被整除的数是连续的。
2)这样的数存在么?求符合这样的数的最小数。
参考:http://blog.csdn.net/erorr/article/details/5837391
0 0
- Java面试算法题目
- 一些算法面试题目
- 算法面试题目1
- 面试算法题目
- 面试算法题目
- 面试算法题目
- 微软面试简单算法题目
- 某公司算法面试题目浅析
- 最近面试的算法题目
- 面试题目集锦 -- 排序算法
- 简单的面试算法题目
- 算法面试字符串-题目1
- C#常见算法题目(面试准备)
- 微软面试中简单的算法题目
- C#常见算法题目(面试准备)
- 2011年淘宝面试 的算法题目
- 面试经典题目:字符串的反转算法
- Java算法面试-编程挑战题目
- select用法
- jsp和servlet映射关系
- Loadrunner ——Error -- memory violation问题解决
- HDU 2091 空心三角形
- Servlet 安全方法
- 面试算法题目
- 编写自己的Shell解释器
- What is DMA and what does it do?
- 让mongodb的secondary支持读操作
- Android开发,你应该知道的学习资源
- Zigbee通讯之开发篇(基于TI 的Z-Stack)
- 【Struts2五】ValueStack以及ognl表达式一(概述)
- Ubuntu增加虚拟内存(swap分区)
- 【VC++游戏开发】智力游戏——鸡蛋里挑骨头(仿扫雷)