掌趣2016校招大题
2015-10-23 22:03
232 查看
北京掌趣科技股份有限公司成立于2004年8月,注册于中关村科技园,是国家高新技术企业和双软认证企业。公司主营游戏开发、代理发行和运营,是中国领先的移动终端及互联网页面游戏开发商、发行商和运营商。
宣讲会听了一下很有感染力,学到了很多,还和掌趣老总在台下有几次简单的对话,很是激动。
校招就是基础基础概念的考察,先填空,选择,还有3道编程,给大家分享,仅供学习。
第一题:
二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。
进行二分查找的前提是数组已排序,这里假定数组递增排序。
每次查找都将待查找数num与处于数组中间位置a[mid]的数进行比较,num < a[mid]则在mid之前的元素中进行查找,反之在mid之后的元素中进行查找。
在函数中使用low, mid, high来对待查找的范围来进行标记。
二叉树详细知识概念:二叉树的总结
第三题:队列的创建
队列:点击打开链接
宣讲会听了一下很有感染力,学到了很多,还和掌趣老总在台下有几次简单的对话,很是激动。
校招就是基础基础概念的考察,先填空,选择,还有3道编程,给大家分享,仅供学习。
第一题:
二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步查找前一子表,否则进一步查找后一子表。重复以上过程,直到找到满足条件的记录,使查找成功,或直到子表不存在为止,此时查找不成功。
进行二分查找的前提是数组已排序,这里假定数组递增排序。
每次查找都将待查找数num与处于数组中间位置a[mid]的数进行比较,num < a[mid]则在mid之前的元素中进行查找,反之在mid之后的元素中进行查找。
在函数中使用low, mid, high来对待查找的范围来进行标记。
<span style="font-size:18px;">/*整数查找*/ void binsearch( int num, int a[], int length ) /*num为待查找数字,length为数组a的长度*/ { int low, mid, high; low = 0; high = length - 1; while( low <= high ) { mid = ( low + high ) / 2; if( a[mid] > num ) high = mid - 1; else if( a[mid] < num ) low = mid + 1; else return mid; } return -1 /*未查找到num返回-1*/ }</span>第二题:二叉树层次遍历:也是二叉树遍历的一种方式,二叉树的层次遍历更像是一种广度优先搜索(BFS)。
二叉树详细知识概念:二叉树的总结
//层次遍历 void BinTree::level_order(BinTreeNode *r)const { if(r == NULL) return; deque<BinTreeNode*> q; q.push_back(r); while(!q.empty()) { BinTreeNode *pTmpNode = q.front(); cout<<pTmpNode->get_data()<<" "; q.pop_front(); if(pTmpNode->get_left() != NULL) { q.push_back(pTmpNode->get_left()); } if(pTmpNode->get_right() != NULL) { q.push_back(pTmpNode->get_right()); } } }
第三题:队列的创建
队列:点击打开链接
相关文章推荐
- 干货:android实现hessian通信
- ubuntu apt-get update失败 解决方法
- 【web前端】获取url中的参数
- 必修2?!!!!!!!!!!!!
- Basic Calculator
- Java反射与线程的入门课
- 抛出异常
- java反射的简单例子
- linux中通过修改/etc/passwd,/etc/shadow,/etc/group创建用户
- Remove Duplicates from Sorted Array II
- live555开源RTSP流媒体解决方案说明
- Lua贪吃蛇开发笔记1
- POJ 2236
- ACM学习历程—SNNUOJ1132 余数之和(数论)
- 【Android小游戏】安卓小游戏开发(手把手教学系列三)
- 面试题7:用两个栈实现队列
- 记一些前端框架
- MS SQL SERVER: msdb.dbo.MSdatatype_mappings & msdb.dbo.sysdatatypemappings
- 【Leafletjs】6.Control.Loading推展-在地图上边框添加加载动态条
- C语言--在终端输入多行信息,找出包含“ould”的行,并打印改行