《2018去哪儿秋招前端和软件开发笔试题.docx》由会员分享,可在线阅读,更多相关《2018去哪儿秋招前端和软件开发笔试题.docx(11页珍藏版)》请在第一文库网上搜索。
1、2018去哪儿秋招试题目录2018去哪儿前端秋招试题2一、问答题2二、编程题22018去哪儿秋招笔试试题5一、编程题52018去哪儿软件开发工程师校招试题9一、编程题9编程题I30.0分1/39编程题I30.0分2/310编程题I40.0分3/3112018去哪儿前端秋招试题一、问答题HTM1中的tab1e元素有2种布局(tab1e-1ayout)算法,请给出默认值。并详细说明为什么fixed布局要比auto快?二、编程题1.版本排序题目描述:去哪儿前端技术团队一直很富有创新性,经常为了解决实际工作的一些痛点,自主开发一些工具,来解决这些问题。这样,工具的版本就成为了很重要的一个点,开发者如何
2、提供正确版本,使用者如何获取正确版本,都是十分重要的。因此,版本都会遵循业界统一的规范SemVer。常规版本规则如下:版本格式:主版本号.次版本号修订号,例如1.2.3,版本的三个位数都必须存在,并且为0到999之间的整数。(2)主版本号:当你做了不兼容的功能修改次版本号:当你做了向下兼容的功能性新增修订号:当你做了向下兼容的问题修正当然,使用者不一定会指定版本号,可能使用通配符(例如*)未自动获取满足条件的最新版本。(在本题中,只考虑这种情况表示匹配任意版本例如22*,可以匹配所有221,222等;)现在会给出一个版本列表,并给出使用者的匹配规则,找出符合版本规则而且满足条件的最新版本,并输
3、出,如果没有找到相应结果,则输出0.输入输入第一行是一个整数N,之下N(ON=10000)行为版本号,之后一行使用者的匹配规则M(只包含数字或者*的版本,而且也是三位)。输出52.1.42.5.73.4.62.1.82.1.02.1.*样例输出2.1.82.在去哪儿,前端工程师,在日常工作中,经常会使用到模版引擎,比较常用的有jQueryTemp1atexartTemp1atesMustache等。现在要求你实现一个简单的类似于Mustache的模版引擎,根据传入的模版字符串和数据,替换模版字符串中的标签,输出出对应的HTM1片段。需要支持的模版标签有:(1)keyName:输出对象中属性名为
4、keyName的值。需要支持多级属性,比keyName.name1.name2;(2) keyNamecontentkeyNamekeyName对应的值为“真时输出content,为假时不输出(3) #arrcontent/arr:arr对应的值为假时输出content为嗔时不输出;.表示数组遍历中当前的元素(可以只考虑基本数据类型)o(5)八keyNamecontentkeyNamekeyName对应的值为,或时输出content,为嗔时不输出;注意:如果给定的数据中,没有对应的属性字段,标签替换为空。输入:第一行出入模版字符串(长度不超过1000),字符串中可以包含模版标签,也可以不包括标
5、签。第二行输入需要渲染的数据(JSON字符串,长度不超过1000)。输出:输出对应的HTM1的片段。代码输入:We1comeQunar-Man2018去哪儿秋招笔试试题一、编程题1/3日本旅行时间限制:C/C+语言IOOOMS;其他语言3000MS内存限制:C/C+语言65536KB;其他语言589824KB题目描述:楚乔、宇文珥和燕洵在日本旅行,经过了几天的游玩之后,钱包里出现了大量硬币,楚乔决定用钱包里的硬币为宇文珥和燕洵在自动贩卖机买水。楚乔的钱包里有1元、5元、10元、50元、100元和500元硬币各C17C5,C107C507C100,C500枚。现在要用这些硬币来到自动贩卖机买价格
6、为A的饮料,假设自动贩卖机所需的硬币金额必须是刚刚好,不能多也不能少,最少需要多少枚硬币?限制条件0=C17C57C10,C50,C100,C500=10000000000=A0,且km输入第一行:空格分割的字符,互不重复第二行:排列数k输出第一行:字典序排序后的最小排列第二行:字典序排序后的最大排列样例输入abc2样例输出ab编程题I30.0分2/3BST判定时间限制:C/C+语言3000MS;其他语言5000MS内存限制:C/C+语言65536KB;其他语言589824KB题目描述:判断给定的二叉树是否为二分查找树。假设树的每个节点以整数为键值,且不同节点的键值互不相等。二分查找树成立的判
7、定条件:对任何非叶子节点A,如果A存在左子树,则A的键值大于其左子树所有节点的键值,且,如果A存在右子树,则A的键值小于其右子树所有节点的键值。输入第一行:根节点键值;第二行开始,二叉树的结构,每行代表一组根节点与左右子节点的对应关系,-1代表空节点。格式:根节点键值:左子节点键值I右子节点键值例如,5:3|-1表示键值为5的节点,左子节点的键值为3,右子节点为空节点假设:所有节点的键值非负,且不超过1023输出判断结果,0表示输入不是二分查找树,1表示输入是二分查找树样例输入55:4|74:3|87:2|-13:-1|-18:-1|-12:-1|-1样例输出O编程题I40.0分3/3乘方取模时间限制:C/C+语言IOOOMS;其他语言3000MS内存限制:C/C+语言65536KB;其他语言589824KB题目描述:给定非负整数a,b,m,利用基本的算术运算符(+-*/%)以及位运算符,计算abmodm输入一行三个非负整数,空格分隔,分为abm的值,其中m不为0输出abmodm的结果样例输入2105样例输出4