巨人网络开发工程师试题
1, 假设A上台阶,一次可以跨1层,2层或3层,问A上50层台阶,有多少种走法?
假设A上台阶,一次可以跨1层,2层,3层.. 或m层,问A上n层台阶,有多少种走法?
其中,m和n都是正整数,并且 m <= n, m <= 10, n <= 50
请编程解决这个问题,并详细说明解题思路。
答:到第n层,必然经过第n-1,n-2,……,或者 n-m层。把到第n层的走法记为f(n),可得斐波那契数列如下:f(n)=f(n-1)+…+f(n-m)
2,请设计一套对n个字符进行全排列的算法。
如果对该算法输出全排列顺序分别标记序号,从1到n!
那么,给出low, high,能否不算出所有排列,而直接输出第low个到第high个的排列方式。
请写出示例代码,并详细说明解题思路。
3,一栋楼有N层,要去每一层的人数分别为p[1], p[2], ...,p[n],如果电梯只停1次,问停哪一层,可以让所有人走的楼层最少。
如果走路上一层楼耗费的能量为k1, 走路下一层楼消耗的能量为k2,坐电梯上一层楼消耗的能量为k3,问停哪一层,可以让所有人消耗能量最少。
请编程解决这个问题,并详细说明解题思路。
4,如果你很熟悉STL,请尝试做下面题目:
a,如何将大量有序数据(例如有100万条有序节点的vector),快速添加到map中去
b,一个vector中有100万条数据,请以最高的效率,删除第5,10,15项的内容
5,在云存储计算中心,大量的文件存储在N台服务器组成的集群中,每个文件都有一个独立且唯一的编号(ID),我们根据 ID % N 将文件的实际存储分配到N台服务器中。但是如果有一台服务器宕机,或者需要添加一台服务器时,由于N的变化,会造成大量的访问错误,需要重新对文件的存储进行分配(需要把文件从一台机器复制到另一台机器)。
能不能换一种策略,使得在充分利用每台服务器的存储空间同时,尽可能减少服务器数量的变化对文件存储重分配造成的开销,如果N台服务器的存储空间各不相同,如何调整你的策略。
6,有两个大于1且不相等的自然数。A知道两个数的乘积,B知道两个数的和。
B说:我不知道这两个数是多少,但我确定你也不知道
A看了看乘积说:那现在我就知道这两个数是多少了。
B想了想说:嗯,现在我也知道这两个数是多少了。
请问,这两个数分别是多少。
7,设计一套内存地址描述算法和数据结构,要求如下:
1)内存地址从0开始,到无穷大,初始内存都是未使用。
2)申请内存块算法,输入申请大小,输出申请到的内存的起始地址,并将此块内存标记为已使用,申请内存块时,不能覆盖到已使用的内存块。
3)在可能申请到的内存地址中,必须随机。即如果[0, 0x1000]都是未使用的内存,申请0x100大小的内存,申请到的地址必须是从[0, 0xF00]中随机。
4)如果连续多次进行申请内存操作,会对该段内存产生碎片,申请内存的时候,要尽可能使用中间的碎片进行申请,只有在所有碎片都无法申请的所需大小时,才能向内存最后的无穷大空间中申请内存。
5)不需要释放内存块的功能,在大量碎片(超过2w个)的情况下,申请速度会大大降低(浪费在查询碎片内存块上),请尽量保证最快的申请内存块速度。
转载于:https://www.cnblogs.com/xkfz007/archive/2012/11/11/2765543.html
巨人网络开发工程师试题相关推荐
- python开发工程师面试题-超实用面试必看,Python工程师面试题
原标题:超实用面试必看,Python工程师面试题 面试是公司挑选职工的一种重要方法.它给公司和应招者提供了进行双向交流的机会,能使公司和应招者之间相互了解,从而双方都可更准确做出聘用与否.受聘与否的决 ...
- python开发工程师面试题-2019超实用Python开发工程师面试题分享
原标题:2019超实用Python开发工程师面试题分享 Python诞生很早,但真正火爆时间并不长.目前Python语言的应用领域非常广泛,主要有系统编程.图形处理.数学处理.文本处理.数据库编程.网 ...
- 下列不属于python第三方库的是-python后端开发工程师考证试题
原标题:python后端开发工程师考证试题 python开发工程师考证试题 选择题 题目 关于 Python 程序格式框架的描述,以下选项中错误的是 ( A ) A: Python 语言不采用严格的& ...
- 微博面试Java,微博java开发工程师面试题整理
下面要给大家分享的是一个小伙伴的微博java开发工程师一面的面试题,一起来看看微博java开发工程一面面试题都有哪些吧! 面试题(一面) 1.做一个小时笔试 2.java创建对象的几种方式是什么? 用 ...
- 移动开发工程师面试题集:Android iOS
2019独角兽企业重金招聘Python工程师标准>>> 移动开发工程师面试题集:Android & iOS 移动开发也称为手机开发,或叫做移动互联网开发,移动市场暗流涌动,春 ...
- python定义一个字典、存储雇员号和姓名_【一点资讯】python后端开发工程师考证试题...
python开发工程师考证试题 选择题 题目 关于 Python 程序格式框架的描述,以下选项中错误的是 ( A ) A: Python 语言不采用严格的"缩进"来表明程序的格式框 ...
- 美团Android开发工程师岗位职能要求,高级面试题+解析
前言 不知道大家面试的时候,有没有遇到这种情况,面试工资谈的是10K,最后干着40K的活!说着冠冕堂皇,提升大家能力的话,做着死命压榨员工,996成了程序员心里的魔咒! 初级安卓开发工程师(10K-1 ...
- iOS开发工程师笔试题
iOS开发工程师笔试题 1. Object-c的类可以多重继承么?可以实现多个接口么?Category是什么?重写一个类的方式用继承好还是分类好?为什么? Object-c的类不可以多重继承:可以 ...
- java中级职称考试试题_Java中级开发工程师笔试题及答案2016
Java中级开发工程师笔试题及答案2016 java中级工程师考试试题你做了吗?下面随yjbys小编一起来看看最新Java中级开发工程师笔试题及答案,仅供考生参考! 1) 描述Web Service的 ...
最新文章
- 《评人工智能如何走向新阶段》后记(再续12)
- DeepLearning 应用概述
- mysql 导出函数_mysql导出存储过程或函数
- java 内存模型 ——学习笔记
- ios gb2312转utf-8
- 【机器人】标记不友好评论,AI工作效果是人类的4.4倍
- gridview 实现排序 (在不是使用sqlDataSource控件,而在后台编码绑定gridview时,指定那个字段排序时使用。本例用了单层结构,可修改后应用于多层)
- Git--版本管理的使用及理解
- phantomjs执行常见错误
- Java并发容器--ConcurrentLinkedQueue
- 【Git/Github学习笔记】Git的工作流程
- VGG16模型详解 and 代码搭建
- 【工控】脉冲当量怎么算?
- 使用dom4j读写xml实例
- 设计模式七大原则——里氏替换原则
- Houdini运行时崩溃了怎么办?别害怕,还有一点点救!
- 企业绩效管理怎么做?
- windows 10修改host,有效解决权限问题,请惠存
- 7个银行的软件测试项目实战,别再说简历项目不知道怎么写了
- arcgis运行python脚本时闪退_关于ArcMap中打开ArcToolbox导致闪退的解决办法