互联网大公司面试笔试题开发岗

合集下载

互联网大公司面试笔试题程序员面试题精选100题

互联网大公司面试笔试题程序员面试题精选100题

程序面精100 题(01)-把二元查找树转变成排序的员试题选双向链表题目:输入一棵二元查找树,将该二元查找树转换成一个排序的双向链表。

要求不能创建任何新的结点,只调整指针的指向。

比如将二元查找树10 /\6 14/ \ / \4 8 12 16 转换成双向链表4=6=8=10=12=14=16。

分析:本题是微软的面试题。

很多与树相关的题目都是用递归的思路来解决,本题也不例外。

下面我们用两种不同的递归思路来分析。

思路一:当我们到达某一结点准备调整以该结点为根结点的子树时,先调整其左子树将左子树转换成一个排好序的左子链表,再调整其右子树转换右子链表。

最近链接左子链表的最右结点(左子树的最大结点)、当前结点和右子链表的最左结点(右子树的最小结点)。

从树的根结点开始递归调整所有结点。

思路二:我们可以中序遍历整棵树。

按照这个方式遍历树,比较小的结点先访问。

如果我们每访问一个结点,假设之前访问过的结点已经调整成一个排序双向链表,我们再把调整当前结点的指针将其链接到链表的末尾。

当所有结点都访问过之后,整棵树也就转换成一个排序双向链表了。

参考代码:首先我们定义二元查找树结点的数据结构如下:struct BSTreeNode // a node in the binary search tree {int m_nValue; // value of nodeBSTreeNode *m_pLeft; // left child of nodeBSTreeNode *m_pRight; // right child of node};思路一对应的代码:///////////////////////////////////////////////////////////////////// //// Covert a sub binary-search-tree into a sorted double-linked list // Input: pNode - the head of the sub tree// asRight - whether pNode is the right child of its parent // Output: if asRight is true, return the least node in the sub-tree // else return the greatest node in the sub-tree ///////////////////////////////////////////////////////////////////////BSTreeNode* ConvertNode(BSTreeNode* pNode, bool asRight) {if(!pNode)return NULL;BSTreeNode *pLeft = NULL;BSTreeNode *pRight = NULL;// Convert the left sub-tree if(pNode->m_pLeft)pLeft = ConvertNode(pNode->m_pLeft, false);// C onnect t he g reatest n ode i n t he l eft s ub-tree t o t he c urrent n ode if(pLeft){pLeft->m_pRight = pNode;pNode->m_pLeft = pLeft;}// Convert the right sub-tree if(pNode->m_pRight)pRight = ConvertNode(pNode->m_pRight, true);// Connect the least node in the right sub-tree to the current node if(pRight){pNode->m_pRight = pRight;pRight->m_pLeft = pNode;}BSTreeNode *pTemp = pNode;// If the current node is the right child of its parent,// return the least node in the tree whose root is the current nodeif(asRight) {while(pTemp->m_pLeft)pTemp = pTemp->m_pLeft; }// If the current node is the left child of its parent,// r eturn t he g reatest n ode i n t he t ree w hose r oot i s t he c urrent n ode else{while(pTemp->m_pRight)pTemp = pTemp->m_pRight;}return pTemp;}///////////////////////////////////////////////////////////////////// //// Covert a binary search tree into a sorted double-linked list // Input: the head of tree // Output: the head of sorted double-linked list///////////////////////////////////////////////////////////////////////BSTreeNode* Convert(BSTreeNode* pHeadOfTree) {// As we want to return the head of the sorted double-linked list,// we set the second parameter to be truereturn ConvertNode(pHeadOfTree, true);}思路二对应的代码:///////////////////////////////////////////////////////////////////////// Covert a sub binary-search-tree into a sorted double-linked list // Input: pNode - the head of the sub tree// pLastNodeInList - the tail of the double-linked list///////////////////////////////////////////////////////////////////////void ConvertNode(BSTreeNode* pNode, BSTreeNode*& pLastNodeInList) { if(pNode == NULL)return;BSTreeNode *pCurrent = pNode;// Convert the left sub-treeif (pCurrent->m_pLeft != NULL)ConvertNode(pCurrent->m_pLeft, pLastNodeInList); // Put the current node into the double-linked list pCurrent->m_pLeft = pLastNodeInList;if(pLastNodeInList != NULL)pLastNodeInList->m_pRight = pCurrent; pLastNodeInList = pCurrent;} // Convert the right sub-treeif (pCurrent->m_pRight != NULL)ConvertNode(pCurrent->m_pRight, pLastNodeInList);///////////////////////////////////////////////////////////////////////// Covert a binary search tree into a sorted double-linked list// Input: pHeadOfTree - the head of tree// Output: the head of sorted double-linked list///////////////////////////////////////////////////////////////////////BSTreeNode* Convert_Solution1(BSTreeNode* pHeadOfTree){BSTreeNode *pLastNodeInList = NULL; ConvertNode(pHeadOfTree,pLastNodeInList);// Get the head of the double-linked listBSTreeNode *pHeadOfList = pLastNodeInList;while(pHeadOfList && pHeadOfList->m_pLeft)pHeadOfList = pHeadOfList->m_pLeft;}return pHeadOfList;程序面精100 题(02)-设计包含min 函数的栈员试题选题目:定义栈的数据结构,要求添加一个min 函数,能够得到栈的最小元素。

互联网设计岗位招聘笔试题及解答(某大型国企)2024年

互联网设计岗位招聘笔试题及解答(某大型国企)2024年

2024年招聘互联网设计岗位笔试题及解答(某大型国企)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、以下哪个选项不属于互联网设计的范畴?A、网页设计B、移动应用设计C、平面设计D、硬件设计2、在互联网设计中,以下哪个概念不属于用户体验(UX)设计?A、交互设计B、视觉设计C、信息架构D、产品营销3、以下哪个软件通常用于创建和编辑网页设计原型?A. Adobe PhotoshopB. SketchC. Microsoft PowerPointD. AutoCAD4、在网页设计中,以下哪个颜色模式被广泛用于网页背景?A. CMYKB. RGBC. HSVD. HSL5、在网页设计中,以下哪个CSS属性用于设置元素的内边距(padding)?A. marginB. paddingC. borderD. margin-left6、以下哪个技术通常用于实现网页中的动态内容更新?A. AJAXB. CSSC. HTMLD. JavaScript7、在网页设计中,以下哪个元素通常用于创建网页布局?A. JavaScriptB. CSS(层叠样式表)C. HTML(超文本标记语言)D. PHP8、在响应式设计中,以下哪个属性通常用于确保网页在不同设备上都能保持良好的显示效果?A. min-widthB. max-widthC. widthD. height9、以下哪项不是用户体验设计师的核心工作职责?A、界面设计B、交互设计C、项目管理D、前端开发 10、在用户体验设计中,以下哪个原则不是优先考虑的?A、一致性B、可用性C、创新性D、美观性二、多项选择题(本大题有10小题,每小题4分,共40分)1、以下哪些工具或技术通常被用于互联网设计岗位?()A、PhotoshopB、IllustratorC、SketchD、Axure RPE、Adobe After Effects2、以下哪些设计原则在互联网设计中尤为重要?()A、一致性B、简洁性C、可用性D、美观性E、创新性3、以下哪些工具或软件通常用于互联网设计岗位的界面设计?()A. Adobe PhotoshopB. SketchC. Microsoft PowerPointD. Adobe Illustrator4、以下哪些设计原则对于互联网产品界面设计至关重要?()A. 一致性B. 可访问性C. 简洁性D. 交互性5、以下哪些是用户体验(UX)设计中的核心原则?()A、简洁性B、一致性C、易用性D、交互性E、反馈机制6、以下哪些工具或软件常用于互联网设计的前端开发?()A、HTMLB、CSSC、JavaScriptD、PhotoshopE、Sketch7、以下哪些属于用户体验(UX)设计师的核心职责?()A、界面设计B、交互设计C、产品原型制作D、前端开发E、项目管理8、以下关于移动优先设计的原则,哪些是正确的?()A、优先考虑移动设备上的用户体验B、在移动设备上提供完整的功能C、尽可能减少页面加载时间D、确保在移动设备上的内容易于阅读E、只关注小屏幕设备的设计9、以下哪些工具或平台常用于互联网设计领域?()A. Adobe PhotoshopB. SketchC. Microsoft PowerPointD. Axure RPE. Figma 10、以下哪些原则在互联网设计领域中被广泛推崇?()A. 一致性B. 可访问性C. 用户体验至上D. 创新性E. 可扩展性三、判断题(本大题有10小题,每小题2分,共20分)1、互联网设计岗位的应聘者必须具备扎实的美术功底和良好的审美能力。

互联网设计岗位招聘笔试题及解答(某大型央企)

互联网设计岗位招聘笔试题及解答(某大型央企)

招聘互联网设计岗位笔试题及解答(某大型央企)一、单项选择题(本大题有10小题,每小题2分,共20分)1、以下哪个不是用户体验的核心要素?A、功能性B、可用性C、可访问性D、美观性答案:D解析:用户体验(UX)的核心要素包括功能性、可用性、可访问性和情感化。

美观性虽然对用户体验有影响,但它不是用户体验的核心要素。

2、在设计网站导航时,以下哪种方法通常被认为是最有效的?A、遵循传统的导航布局B、使用动态效果和动画C、使用清晰的标签和分类D、让用户自定义导航答案:C解析:在设计网站导航时,使用清晰的标签和分类通常被认为是最有效的方法。

这有助于用户快速找到他们需要的信息,提高网站的可用性和用户体验。

遵循传统的导航布局和让用户自定义导航在某些情况下可能适用,但不是最有效的方法。

使用动态效果和动画可能会分散用户的注意力,降低导航的效率。

3、以下哪种设计软件被广泛用于互联网产品设计,尤其是用户体验(UX)和用户界面(UI)设计?A. Adobe PhotoshopB. AutoCADC. Microsoft VisioD. Adobe Illustrator答案:A 解析:Adobe Photoshop 是一款广泛用于互联网产品设计中的图像编辑软件,它非常适合进行UI和UX设计,因为设计师可以利用其强大的图像处理功能来创建高质量的界面原型和设计图。

AutoCAD 主要用于建筑和工程领域的设计,Microsoft Visio 适用于流程图和图表设计,Adobe Illustrator 则以矢量图形设计为主,虽然也可用于UI设计,但不如Photoshop常用。

因此,正确答案是A。

4、在用户体验设计中,以下哪个原则有助于提高用户完成任务的成功率和满意度?A. 简化操作流程B. 提高界面美观性C. 使用复杂的技术特性D. 限制用户选项答案:A 解析:简化操作流程是用户体验设计中的一项重要原则。

通过简化操作流程,可以减少用户完成任务所需的时间和精力,从而提高用户完成任务的成功率和满意度。

互联网大公司面试笔试题开发

互联网大公司面试笔试题开发

思路:利用栈的思想每次遇到“..”时,将退栈至上一个'/' 位置。

1. #include <stdio.h>2. #include <string.h>3. #include <stdlib.h>4.5. char * convert_path_opt (const char * path )6. {7. char * result = NULL ;8. int top = 0 ;9. int path_len = 0 ,10. index = 0 ,11. point_cnt = 0 ;12.13. / ** <check * /14. if (NULL == path )15. {16. fprintf (stderr ,“convert_path_opt:invalid argument。

\ n”);17. 返回NULL ;18. }19.20. / ** <分配内存* /21. path_len = strlen (path );22. result = (char *)malloc (path_len * sizeof (char ));23. if (NULL == 结果)24. {25. fprintf (stderr ,“convert_path_opt:无法访问malloc。

\n”);26. 返回NULL ;27. }28.29. / ** <convert * /30. while (index < path_len )31. {32. / ** <点之前复制字符。

* /33. while (index < path_len && path [ index ] != '。

' )34. {35. result [ top ++] = path [ index ++];36. }37.38. / ** <反点。

大数据开发工程师招聘笔试题与参考答案(某大型国企)2024年

大数据开发工程师招聘笔试题与参考答案(某大型国企)2024年

2024年招聘大数据开发工程师笔试题与参考答案(某大型国企)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、以下哪个技术栈是大数据开发工程师常用的核心技术栈之一?A、Java + Hadoop + SparkB、Python + Pandas + NumPyC、C++ + Redis + KafkaD、JavaScript + React + Node.js2、在大数据生态中,以下哪个组件用于实现数据仓库的构建?A、HiveB、HBaseC、ElasticsearchD、Kafka3、某大型国企在进行数据仓库设计时,需要考虑数据仓库的以下哪些特点?(多选)A、数据仓库是面向主题的B、数据仓库是集成的C、数据仓库是非易失的D、数据仓库是实时更新的4、在数据仓库的ETL(Extract, Transform, Load)过程中,以下哪个步骤属于数据转换阶段?(单选)A、数据抽取B、数据清洗C、数据加载D、数据映射5、在以下关于Hadoop的描述中,哪项是错误的?A、Hadoop是一个开源的分布式计算框架,用于处理大规模数据集。

B、Hadoop使用MapReduce编程模型来处理数据。

C、Hadoop的存储系统是HDFS(Hadoop Distributed File System),它不保证数据的原子性。

D、Hadoop的主要组件包括HDFS、MapReduce、YARN和ZooKeeper。

6、以下哪个不是Spark的组件?A、Spark SQLB、Spark StreamingC、Spark MLlibD、Hadoop YARN7、某大型国企的数据仓库中包含了一个用户行为数据表,该表记录了用户在平台上的浏览、购买等行为。

以下关于该数据表的说法,正确的是:A、该数据表应该是时序数据库,因为记录了用户的行为时间序列。

B、该数据表应该是文档数据库,因为存储了用户的具体行为描述。

互联网设计岗位招聘笔试题与参考答案2024年

互联网设计岗位招聘笔试题与参考答案2024年

2024年招聘互联网设计岗位笔试题与参考答案(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、以下哪个选项是互联网设计中最常用的设计软件之一?A、Adobe PhotoshopB、Microsoft PowerPointC、CorelDRAWD、Adobe Illustrator2、在网页设计中,以下哪种布局方式能够提供更好的用户体验?A、固定宽度布局B、全屏宽度布局C、响应式布局D、自适应布局3、在网页设计中,哪种颜色模式最常用于屏幕显示?A)CMYKB)RGBC)HSVD)HSL4、以下哪个HTML标签用于定义超链接?A)<a>B)<img>C)<p>D)<div>5、题干:在网页设计中,以下哪种布局方式能够实现响应式设计,即在不同设备上自动调整布局以适应屏幕大小?A. 流式布局B. 固定布局C. 弹性布局D. 表格布局6、题干:以下关于HTML5新特性的描述,哪一项是错误的?A. HTML5支持内联SVG和Canvas元素B. HTML5引入了新的表单控件,如email和dateC. HTML5不再支持JavaScriptD. HTML5允许使用HTML5的<audio>和<video>元素嵌入音频和视频7、在网页设计中,下列哪种颜色模式最常用于屏幕显示?()A. CMYKB. RGBC. HSBD. Lab8、在设计响应式网页时,下列哪个CSS属性用于设置元素的最大宽度,使其能在不同屏幕尺寸下保持适当的显示效果?()A. widthB. max-widthC. min-widthD. viewport9、以下哪个工具通常用于制作网页界面原型?A. Adobe PhotoshopB. SketchC. Microsoft WordD. Adobe Illustrator 10、在网页设计中,以下哪个术语通常用来描述页面的布局结构?A. WireframeB. MockupC. PrototypeD. Sitemap二、多项选择题(本大题有10小题,每小题4分,共40分)1、以下哪些是现代互联网设计中的核心设计原则?()A、用户体验(UX)设计B、可访问性设计C、响应式设计D、交互设计E、品牌一致性2、在互联网产品设计中,以下哪些是典型的设计流程阶段?()A、需求分析B、原型设计C、用户测试D、开发阶段E、上线与维护3、以下哪些工具常用于互联网产品设计过程中的原型制作?()A. Adobe XDB. SketchC. Axure RPD. PhotoshopE. Figma4、以下关于用户体验(UX)设计的说法,正确的是哪些?()A. 用户体验设计关注用户在使用产品过程中的情感体验。

前端或移动开发岗位招聘笔试题及解答(某大型集团公司)

前端或移动开发岗位招聘笔试题及解答(某大型集团公司)

招聘前端或移动开发岗位笔试题及解答(某大型集团公司)(答案在后面)一、单项选择题(本大题有10小题,每小题2分,共20分)1、以下哪种编程语言是专门为前端开发设计的?A. JavaB. CC. JavaScriptD. Python2、以下哪个不是HTML5引入的新特性?A. canvasB. SVGC. videoD. Flash3、以下哪种技术不属于前端开发中的客户端脚本语言?A. JavaScriptB. JavaC. PythonD. TypeScript4、在HTML5中,以下哪个元素用于创建可拖动的区域?A. <div>B. <canvas>C. <draggable>D. <area>5、以下哪种技术不是前端开发中常用的JavaScript库或框架?A. jQueryB. ReactC. AngularD. PHP6、在移动开发中,以下哪个不是原生应用开发的常见编程语言?A. SwiftB. JavaC. KotlinD. HTML57、以下哪个技术栈通常用于开发原生Android应用?A. React NativeB. FlutterC. AngularD. Vue.js8、在HTML5中,以下哪个标签用于创建视频播放器?A.B.C.D.9、题干:在HTML5中,哪个属性可以用来控制页面是否在加载时显示滚动条?A. scrollbarsB. scrollbar-widthC. scrollD. autoScroll 10、题干:以下哪个技术不是React.js中的核心概念?A. JSXB. Virtual DOMC. HooksD. jQuery二、多项选择题(本大题有10小题,每小题4分,共40分)1、以下哪些技术或框架是前端开发中常用的?()A、HTML5B、CSS3C、JavaScriptD、ReactE、Vue.jsF、jQueryG、AngularH、Swift(用于移动开发)2、以下哪些特性是移动开发中Android和iOS平台共有的?()A、触摸屏操作B、多点触控C、应用生命周期管理D、文件存储访问E、网络通信F、图形渲染G、传感器数据访问H、应用权限管理3、以下哪些技术栈通常用于移动端开发?()A. HTML5, CSS3, JavaScriptB. Android原生开发(Java/Kotlin)C. iOS原生开发(Objective-C/Swift)D. React NativeE. Flutter4、以下哪些是前端性能优化的常见方法?()A. 压缩图片和资源文件B. 使用CDN加速内容分发C. 减少DOM操作,使用DocumentFragmentD. 利用缓存机制,如Service WorkerE. 使用CSS3的硬件加速5、以下哪些技术或框架是前端开发中常用的?()A. HTML5B. CSS3C. JavaScriptD. ReactE. Vue.jsF. AngularG. Node.js6、在移动开发中,以下哪些平台支持原生应用开发?()A. iOSB. AndroidC. Windows PhoneD. HTML5E. FlutterF. React NativeG. Xamarin7、以下哪些技术或框架是前端开发中常用的?()A. HTML5B. CSS3C. JavaScriptD. ReactE. AngularF. Node.jsG. BootstrapH. jQuery8、以下哪些是移动开发中常见的平台和工具?()A. Android StudioB. XcodeC. FlutterD. React NativeE. SwiftF. KotlinG. IntelliJ IDEAH. Visual Studio9、以下哪些技术或框架常用于前端开发?()A. ReactB. AngularC. Vue.jsD. BootstrapE. JavaF. Kotlin 10、在移动应用开发中,以下哪些平台或技术是必须掌握的?()A. iOS SDKB. Android SDKC. FlutterD. SwiftE. KotlinF. Web技术三、判断题(本大题有10小题,每小题2分,共20分)1、HTML5的本地存储方式中,WebSQL已经被弃用,目前主流的是localStorage和sessionStorage。

互联网大公司面试笔试题数据开发岗

互联网大公司面试笔试题数据开发岗

连续面了快3个小时,出来好多问题没印象了。

记得的知识点有:
携程二面[两个面试官]
聊天
spark
stage连续问题
storm相关
storm为什么吞吐量小
如何防止重复消费
scala写程序,哪几步是落在磁盘里
几个stage
全文索引
跳表
ES查数据为什么那么快
机票部门特别有钱特别好,同事特别友善[这是高个子面试官的原话,他有的问题自己回答了,最后自夸了一下部门,然后说以后可能他带我。


三面
聊天,自我介绍
两个场景题
面完了才知道是机票做数据的老大,说话特别拽,一直再抖,我被他问的加抖就没办法好好思考了
HR面
会不会选择携程,有哪些offer,父母支不支持来上海,有没有男朋友,职业规划
兴趣。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

上来先做题,第一题是有4个人A,B,C,D,有两个戴着白色帽子,两个戴着黑色帽子,四个人都不能转头,初始的观察方向如下图所示,A与B,C,D之间隔了一道墙,不能看到对面的情况,自己也不能看自己的帽子颜色,过
了一段时间之后,有一个人知道了他的帽子颜色,请问是哪一个?
过桥“有五个人,他们过一个桥分别用1,3,6,8,12分钟,有一座桥每次只能通过俩人,并且他们只有一个灯笼,每次过桥都需要打灯笼,请问,他们如何能在30分钟之内过去这个桥?快的如果和慢的一起走,就按慢的时间。

编程题,直线上有N个点,分别是1,2,3,...N,现在给一个原点S和重点T,所有点只能经过一次,现在可以穿越,即从任何点直接到点1或者点N,请问最少需要多少个穿越才能满足要求?输入N,S,T,比如4 1 4,难么答案是0,输入4 1 3 答案是1
现场给一个简历,让你提出修改意见
手写数据库,厕所系统,编写测试用例
介绍项目,介绍其中一个模块的开发流程
为什么要去北京,为什么想着做测试开发,你觉得测试是干什么的?
介绍一下你做过的最疯狂的事情
你有什么要问我的?。

相关文档
最新文档