分享
 
 
 

简单一道排序题,考倒多少读书人!——从华为一道面试题浅谈计算机专业在校大学生该如何学习专业课程,信心百倍挑战就业!

王朝other·作者佚名  2006-01-08
窄屏简体版  字體: |||超大  

/*

===================================================================

作者:rerli

时间:2003-12-17

目的:从华为一道面试题浅谈计算机专业在校大学生该如何学习专业课程,信心百倍挑战就业!

====================================================================

*/

/*

简单一道排序题,考倒多少读书人!

——从华为一道面试题浅谈计算机专业在校大学生该如何学习专业课程,信心百倍挑战就业!

大学生早已不是天之骄子,仅仅是一个普通劳动者。

网上一句顺口溜“本科生象条狗,硕士生满街走,只有博士才能抖一抖”真正恰如其分地说明了这一点。我想许多到深圳求职的,到过宝安北路的深圳人才大市场的大学生朋友会有同感。只要是非休息日,场场爆满,黑压压的人头攒动。就业的残酷性已经到了”学士学士靠边站,硕士硕士中间站,博士博士往前站。听说你是海归派,Hello Hello签合同。“的地步。

计算机专业的毕业生由于前几年就业形势好,IT整个行业还不错,工资相对高点,所以许多人纷纷转行搞编程。这两年行业不景气,工资大不如前,但搞编程的人还是越来越多,特别是非计算机科班出生的。面对这样的现实,我们计算机专业在校大学生应该怎样调整,迎战就业呢?

在回答这个问题之前,我们还是来看看现在的公司都是怎样招人的。

现在找工作,建议在网上找。深圳这边效果好的网站是中国人才热线。天天在上面发简历,等着公司打电话要你去面试就行了。如果有公司要你去面试了,基本都是要过关斩将才有机会和人面谈。一般都是一进公司门,前台小姐会很热情地给你一份试卷做(你不要多问,先老老实实做完题吧:)),根本就不给你机会面谈(题目答得好,你才具备资格和人面谈)。做完了,就放到前台那里,回家等电话吧。机会好的话,可能是管人事方面的人跟你聊聊天,比查户口都要严,什么都问。我是觉得有空要多看看政府发言人、影视明星发言人、公司发言人等等这类讲话,多学学他们是怎么回答记者提问的,这样你才能对付那些人力资源的人。呵呵,这是题外话了。

看到这里,你终于明白,考试还是重要的第一关。都考些啥?我们从华为一道面试题来看看吧!

原题大意是这样的:

有N个大小不等的自然数(1--N),请将它们由小到大排序。

要求程序算法:时间复杂度为O(n),空间复杂度为O(1)。

(请你做做看,时间20分钟)

这一题40分(面试试卷总分100分,60分钟完成。)占40%,可以说对面试成绩至关重要,借用高考的一个名词,这是最后“压轴题”。试卷的分布是这样的,3--5个填空题,4个左右名词解释,8个左右选择题(单选、多选混在一起),2个编程题(任选一题,多做按得分少的计入总分)。就整体难度来说不是很大,考的范围相对来说有点大--C语言、数据结构、网络基础、操作系统、软件工程、数据库等等,但都很基础很基础,都是计算机专业必修课。如果基础知识牢固的话,可能40分钟就能做完。

我上面所说的从这道“压轴题”可窥一斑了。相信许多人在拿到这道题,第一感觉就是很简单嘛,似乎不敢相信会考这么简单的题目!但是,就是这么简单的题目,还真是考倒了许多人,都是大学本科生,学计算机的,有的还是研究生。还真有点“简单一道排序题,考倒多少读书人!”的味道。这是我一个在华为的同学告诉我的,所以可信度应该是很高的。

如果是平时自己做作业,我相信许多人可能一下子就做出来了。原因我分析有两个:一是平时看题会仔细一些,有足够的时间;二是心理上觉得华为不可能考得这么简单,老想是否有什么“陷阱”,过度紧张,加之考试时间本身也不长,60分钟,估计大多数人花在这题上面的的时间一般也就20~30分钟吧。因此,建议在校期间应加强心理素质的训练,这么多大大小小的考试都经历过了,再考一次又有何妨!

从这道题出题意图来看,出题者主要是想考面试者的思维是否敏捷清醒、做事是否认真仔细是否善于思考、基本知识掌握程度如何。为什么这么说呢,第一这道题的确不难,就是一般排序。排序的方法在数据结构中讲得实在是太多了,各种各样的选择排序、插入排序、冒泡排序、希尔排序、堆排序、快速排序等等。但是,用心的人就记得它们当中没有一个算法复杂度是O(n),且不说空间复杂度要满足O(1)。第二就是这道题真正的考点就是看你能否想到数组的下标与这N个数存在的关系。这就是考题中的个小玄机。这N个数随你怎么乱序,排好序后就是数组(让下标从1开始)下标为1的元素,里面放的就一定是1,下标为n的元素,里面放的就一定是N。观察出这点,题目就解决了。

这道题三言两语就分析完了(详细程序见后面)。透过这道题,我来简单说说计算机专业在校大学生该如何学习专业课程。正如你所见,IT有名的公司,考试题目的难度也不过如此。我想只要是想招应届毕业生的公司,他们都不会出很高深的东西来考你。大家都知道,在校是学习基础理论知识的,不是从事研究的,所以他们没有必要那么做。因此,建议多在基础知识方面下工夫,有条件的多做习题、多上机、勤思考,多看看同一个问题其他人是怎么解决的,和你的有什么不同。有精力的人,试着考程序员、高级程序员,这样你有个目标,学习起来可能更来劲,各专业课学起来联系更紧密。

总之一句话,注重基础知识,有目标的学习,理论结合习题集。

[一家之言,欢迎有兴趣的朋友一起讨论:)]

*/

void sort(int e[], int n)

{

int i;

int t; /*临时变量:空间复杂度O(1)*/

for (i=1; i<n+1; i++) /*时间复杂度O(n)*/

{

t = e[e[i]]; /*下标为e[i]的元素,排序后其值就是e[i]*/

e[e[i]] = e[i];

e[i] = t;

}

}

void main()

{

#define MAX 10

int i, a[MAX+1];

printf("Input the number from 1 to %d:\n",MAX);

for (i=1; i<MAX+1; i++)

{

scanf("%d",&a[i]);

}

sort(a,MAX);

printf("\n====sort over====\n");

for (i=1; i<MAX+1; i++)

{

printf("%d ",a[i]);

}

printf("\n");

system("pause");

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有