问题 填空题

阅读下列说明,回答问题1至问题3,将解答填入对应栏内。

[说明]

快速排序是一种典型的分治算法。采用快速排序对数组A[p..r]排序的3个步骤如下:

(1)分解:选择一个枢轴(pivot)元素划分数组。将数组A[p..r]划分为两个子数组(可能为空)A[p..q-1]和A[q+1..r],使得A[q]大于等于A[p..q-1]中的每个元素,小于A[q+1..r]中的每个元素。q的值在划分过程中计算。

(2)递归求解:通过递归的调用快速排序,对子数组A[p..q-1]和A[q+1..r]分别排序。

(3)合并:快速排序在原地排序,故不需要合并操作。

[问题1]

下面是快速排序的伪代码,请填补其中的空缺。

伪代码中的主要变量说明如下:

A:待排序数组;

p,r:数组元素下标,从p到r;

q:划分的位置;

x:枢轴元素;

i:整型变量,用于描述数组下标。下标小于或等于i的元素的值小于或等于枢轴元素的值:

j:循环控制变量,表示数组元素下标。

QUICKSORT(A,P,r)

if(p<r)

q=PARTITION(A,p,r);

QUICKSORT(A,p,q-1);

QUICKSORT(A,q+1,r);

PARTITION(A,p,r)

X=A[r];i=p-1;

for(j=p;j≤r-1;j++)

if(A[j]≤x)

i=i+1;

交换A[j]和A[j]

交换 (1) (2) //注:空(1)和空(2)答案可以互换,但两个空全部答对方可得分

return (3)

[问题2]

(1)假设要排序包含n个元素的数组,请给出在各种不同的划分情况下,快速排序的时间复杂度,用O记号。最佳情况为 (4) ,平均情况为 (5) ,最坏情况为 (6)

(2)假设要排序的n个元素都具有相同值时,快速排序的运行时间复杂度属于哪种情况 (7) 。(最佳、平均、最坏)

[问题3]

(1)待排序数组是否能被较均匀地划分对快速排序的性能有重要影响,因此枢轴元素的选取非常重要。有人提出从待排序的数组元素中随机地取出一个元素作为枢轴元素,下面是随机化快速排序划分的伪代码——利用原有的快速排序的划分操作,请填充其中的空缺处。其中,RANDOM(i,j)表示随机取i到j之间的一个数,包括i和j。

RANDOMIZED-PARTITION(A,p,r)

i=RANDOM(p,r);

交换 (8) (9) ;//注:空(8)和空(9)答案可以互换,但两个空全部答对方可得分

return PARTITION(A,p,r);

(2)随机化快速排序是否能够消除最坏情况的发生 (10) 。(是或否)

(9)处填()。

答案

参考答案:A[r]

解析:

(8)和空(9)答案可以互换。

阅读理解与欣赏

阅读下面的文字,完成后面题目。

蜗 牛

法国 弗朗西斯·蓬热

①与以热灰为家的未燃尽的煤屑相反,蜗牛最喜欢潮湿的土地。它们全身贴地往前走。它们身上带着泥土,泥土是它们的食物,也是它们的排泄物。泥土穿过它们的身体。它们穿越泥土。这是情趣奥妙的相互渗透,因为可以说这是同一颜色的深浅的变化:其中一个是积极成分,一个是消极成分,消极成分围绕、喂养积极成分,而积极成分边移动边进食。

②关于蜗牛,还有许多别的话要说,首先,它自身的湿润。它的冷血。它的延伸性。

③此外,我们无法想像一只抛开背上甲壳而静止不动的蜗牛。它休息时立即将身体缩进壳内。相反,由于腼腆,它一露出那赤裸的身体,一露出它脆弱的外形,就赶紧往前运动,刚一暴露就迅急前进。

④干燥的季节,它们隐居在壕沟里,而且它们的存在似乎有助于居住地的潮润。那儿,也许有其他冷血动物与它们为邻,如癞蛤蟆、青蛙。可是,它们离开壕沟采用不同的方式。蜗牛更有资格住在那儿,因为它离去时要付出更大的代价。

⑤然而要记住,它们虽然喜爱潮湿的土地,但并不喜欢那泽国的湿土:如沼泽、池塘。它们当然更喜欢坚实的土地,但这种土地必须是肥沃和湿润的。

⑥它们也爱吃蔬菜和水分充足的绿叶植物。它们懂得挑选最嫩的叶子,食后仅仅留下叶脉。

⑦它们待在壕沟底干什么?它们喜欢那儿的环境,但那儿终不是久留之地。它们是壕沟的常客,但它们向往浪游的生活。而且它们在沟底和在泥土的小径上一样,背上的甲壳依然使它们显得矜持。

⑧当然,到处背着这样一个壳儿确实是个累赘,但它们并不抱怨。相反,它们把这当成一件幸事。无论走到什么地方,它们随时可以躲进自己家里,使那些居心叵测的人无可奈何。这实在是一种可贵的长处,为此付出代价完全值得。

⑨它们由于有这个能耐、这个方便而洋洋自得。我是一个如此敏感、如此脆弱的生命,怎么能够固若金汤,不怕那些讨厌的东西的袭击,享受幸福和安宁?于是,这背上的掩蔽所应运而生。

⑩我如此紧紧地附着于地面、如此令人怜悯、如此缓慢、如此一往直前、如此有本事离开地面缩进我的家屋,我还有什么忧愁?任你把我踢到什么地方,我有把握在命运放逐我的土地上重新站立起来,重新附着于地面,而且在那儿找到我的饲料——泥土,这是普通的食粮。

⑾啊,当一只蜗牛是多么幸福、多么快活!它还用自己的流涎在它接触过的一切东西上在留下印记。它身后是一道银光闪闪的轨迹。而这正是问题的关键;要生存就难免冒风险。

⑿蜗牛是孤独的,的确如此。它的友人寥寥无几。可是,为了生活得幸福,它并没有这种需要。它同大自然如此亲密地黏附在一起,它如此亲切地享受大自然的恩宠;它是它所拥抱的土地和菜叶的朋友;它是天空的朋友。它骄傲地抬起头颅和那双敏锐的眼珠:高贵、从容、睿智、自豪、自负、骄傲。

⒀请不要说蜗牛在这方面和猪相似。不,它没有那种平庸的小脚、那种惴惴不安的碎步小跑。

小题1:下列对文章的理解和分析,最正确的两项是(    )(5分)

A.作者用一分为二的观点评价蜗牛,既赞颂蜗牛黏附大自然,勇敢无畏地追求自由、幸福的生活,又批评蜗牛不讲卫生,缺乏独立性,骄傲自满。

B.这篇散文具有深刻的寓意:一切生物都有自己的生活轨迹,并因此快乐和幸福。作者希望,人类的每一个个体都当一只蜗牛。

C.文章先写蜗牛普通、细微、低贱的一面,后写蜗牛有风度、本事和强大的生命力。抑扬之间,蜗牛美好品质和美丽内心得到充分展示,文章寓意得到深刻表现,感染力增强。

D.为了描写蜗牛美的形象,赞美蜗牛幸福快活的生活,作者断然否定同是冷血动物的癞蛤蟆、青蛙,否定同样有高贵、从容等品质的猪。这种以贬斥别的动物来捧高蜗牛的写法其实有损蜗牛的形象。E.作者综合运用说明、叙述、描写、议论、抒情表达方式咏物言志,“物”与“志”有机地融为一体,所咏之物鲜明、清晰,所表达的思想具体、形象。

小题2:根据文章相关内容,分条概括蜗牛的生活习性。(5分)

小题3:文章第⑨、⑩自然段用第一人称“我”,而最后三段改用第三人称“它”。请简要分析这种变化的理由。(4分)

小题4:作者动情地赞美:“啊,当一只蜗牛是多么幸福、多么快活!”为什么?请结合文本和社会生活进行探究。(8分)

填空题