Chinaunix首页 | 论坛 | 博客
  • 博客访问: 146643
  • 博文数量: 8
  • 博客积分: 342
  • 博客等级: 一等列兵
  • 技术积分: 109
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-02 09:31
文章分类

全部博文(8)

文章存档

2012年(8)

分类: C/C++

2012-06-12 19:22:12

  之前网申几次,都收到了据信。突然短信电话先后通知我去面试,很是惊讶。我学校在南京仙林,面试地点在东大九龙湖校区,好远啊!提前三个小时出发的,提前了半个小时到了,算是时间刚好。下面说说面试题目与我的答案和感受。
1.自我介绍
   balabala ~~ 应该是没用2分钟,是不是太简短了点?

2.冒泡排序算法
   很快写出了,提前有准备,原理很简单,只是容易跟其他算法的规则搞混淆。
   
  1. int BobbleSort(int *a, size_t size)
  2. {
  3.    int temp;
  4.    for (int i = 0; i < size; i++)
  5.        for (int j = 0; j < size - i; j++)
  6.            if (a[j] > a[j+1]) {
  7.               temp = a[j];
  8.               a[j] = a[j+1];
  9.               temp = temp;
  10.             }
  11. }

3.对冒泡排序改进
   要求交换数据时(冒泡属于一种交换排序算法)不用临时变量。
  1. a += b;
  2. b = a - b;
  3. a = a - b;
  1. a ^= b;
  2. b = a ^ b;
  3. a = a ^ b;
4.一个单链表,已知其中可能有环路,也就是单链表后面一些节点的指针可能回形成回路,写一个算法检测是否存在回路。
     没答出来,临走问了面试官。给的答案感觉相当精妙,或许自己太菜了。
     用两个指针,同时从头节点往后循环,使其步长不同,如果存在回路的话,两个指针终究会相等。否则链表走到NULL指针,则表示无回路存在。

然后让我去另一个面试官那里,给了我两个题目。
1.一页纸,打印了几个循环,看起来像是windows bat文件。让我看这写代码完成了什么功能
  看不懂语法结构,曾一度想放弃,后来面试官说,你看看,猜一猜。看到最后才看出点眉目出来。大概是一个用windows批处理语句写的一个对项目内C语言代码的自动编译脚本,完成类似于gmake和makefile的功能,只是规则自己写,规则的解析也是自己写的。挺有意思的
2.英语口语,你自己觉得最自豪的一件事情。
   说实话,真没什么好自豪的事情,所以就随便说了几句关于给大三本科代课的事情。


总体来说,面试的题目挺基础,但是只问了很少几个题目,考察不够全面。感觉有力无处使。还没感觉就说我可以走了,哎~估计又被鄙视了


阅读(6166) | 评论(13) | 转发(2) |
给主人留下些什么吧!~~

freeloki2012-06-16 15:57:11

Bean_lee: 提两点 ,冒泡排序没有及时终止,还有那个链表检测环的算法,可以看GFree_Wind 的博客。.....

beyond3333502012-06-16 13:10:19

Bean_lee2012-06-15 12:36:36

提两点 ,冒泡排序没有及时终止,还有那个链表检测环的算法,可以看GFree_Wind 的博客。

qizheguang2012-06-15 08:30:00

freeloki: 嘎嘎多谢多谢 的确我写错了.....
其实该谢谢你,把自己遇到的问题拿出来与大家共享,值得我们学习哈

freeloki2012-06-15 08:00:50

qizheguang: 楼主for (int j = 0; j < i - size; j++)
这句话是不是写错了呢,我感觉应该是for (int j = 0; j < size - i; j++);
不知道是不?.....
嘎嘎 多谢多谢 的确我写错了