励志网

Hi, 请登录

“我与NCRE”征文大赛优秀作品选登

2003年:下半年我在北京航空航天大学直接报考四级,考试后才知道,原来四级并不是最低级别,反而是最高级别。不过这并没有使我受到太大的冲击,成功征服了四级。有了第一次之后还不够“过瘾”,我感觉三级的4个科目在具体技术领域方面更有指导学习的意义,二级考试最能考核上机实践操作的技能,我开始了挑战。

2004年:因为我比较喜欢计算机网络,所以选择了三级网络技术,开始享受备考的过程带给我的乐趣。

2005年:我拿到C++证书之后,还不知足,又开始觊觎三级考试的另外三个科目,截至2006年圣诞节拿到了6张证书。

2007年:项目组要做一个软件,需要Matlab和Java混合编程,我开始从头起步学习Java编程,可能是因为有C++的基础,越学越觉得简单。后来,项目做成了,领导还算满意,我的第7张证书―二级Java也到手了。

2008年:上半年拿下四级网络工程师后,下半年备考四级软件测试工程师,不少人缺考或中途放弃,我依然很自信、镇定、沉着,就在9月20日这个五年前我通过老四级的时刻,我再一次取得了胜利。

现在我的9张NCRE证书要专门清理一个抽屉才能放下。我在计算机专业基础、硬件维护、软件编程、网络通信、信息系统、数据库以及软件测试等诸多领域都留下了学习的足迹,感到很快乐,很满足,我在用实际行动践行着“以考促学、终身学习”技能大赛获奖感言,这不正是NCRE考试的宗旨吗?

NCRE数据结构考题经验谈

三级数据库技术是难度比较大的科目之一,试卷中有30分考核“数据结构与操作系统原理”,所考查的范围相对比较专业,所涉及的内容都是计算机专业的相关课程,特别是数据结构这一科目,不仅十分抽象,而且难度较大,如何顺利通过障碍呢?下面,我以自己的备考经验,举一个经典的关于散列表带冲突检测/碰撞处理的数据结构考题的例子来说明具体的解题技巧和方法。

2009年3月三级数据库技术真题[科目代码:36],填空题第4题,分值2分;此类题型早在2008年4月、2007年4月就已经考到过。

设散列表的地址空间为0到12,已知散列函数为H(k)= k MOD 13,并且采用线性探查法来处理冲突/解决碰撞,依次将关键码14,95,24,61,27,82,69插入初始为空的散列表后,最后一个关键码值69的地址为________。

技术点评

做这种考题时,要看清题目的散列空间范围、散列函数以及碰撞处理的方法,然后根据关键码值逐一计算,遇到冲突时,按照碰撞处理方法进行处理。

本例中,碰撞处理方法是“线性探查法”,意思是在当前关键码值的地址和前面已确定的关键码值的地址相冲突时,要将当前关键码值的地址按顺序线性后延,直到找到一个空地址为止。本例中,计算完毕之后的关键码值排列如下:

表注:

上表中,第一行数据“14、95、61、24”分别是计算后彼此之间地址不相冲突的关键码值;第二行数据“27、82”分别是计算后与前面已确定的关键码值地址相互冲突的关键码值,按照“线性探查法”的原理,需要将关键码值“27”按顺序线性后延一位,放入编号为2的地址空间中,同理技能大赛获奖感言,将关键码值“82”也按顺序线性后延一位,放入编号为5的地址空间中;第三行数据“69”也是计算后和前面已确定的关键码值地址相互冲突的关键码值,也要按顺序线性后延,但是后延一位就会与关键码值“82”的地址再次相冲突,因此,这时需要后延两位,最后将其放入编号为6的地址空间中,构成第4行完整的最终排列结果。

本题在确定最后一个关键码值的位置时要执行两次碰撞处理,更加容易诱使大家发生计算错误和分析失误,解题时要格外小心。

有关数据结构类型的考题其实还有很多种类,例如:二叉树遍历/分析/转换类考题、霍夫曼编码类考题、快速排序类考题以及栈操作(pop/push/top)类考题等。因此,大家不妨多花一些时间和精力,争取在平时就把这些问题都搞明白,这样才能够在实战考试中做到心态平和、胸有成竹。

来源【励志网】自媒体,更多内容/合作请关注「辉声辉语」公众号,送10G营销资料!

相关推荐

二维码
评论