问几道大一计算机专业的题目【急~~~】

来源:百度知道 编辑:UC知道 时间:2024/05/24 00:17:56
一. 下面三道题目都蕴含了计算机相关的知识,请作答
1. 在一个屋子里有若干人,一个人想将一个消息传递给另一个人,已知不可能存在直接或者间接精确找到这个人的方法,请问:
(1) 在不需要保密的情况下,如何成功将消息传递?
(2) 在需要保密的情况下,如何成功的传递消息?(提示:在进入屋子之前人们是可以直接沟通的)(本题10分)
(来源:计算机网络→IP广播机制)

2. 在一个完全无光,足够大,并无法传递声音的环境里,有25个人,其中20个人依次手牵手站成一列,而且这个队列的一端的队首身上有一个特殊标记。另外,如果队列中的任何一个人完全失去了他人的牵手,那他就会迷失在这个空间中。另外5个人比较特殊,他们都能看到队首身上的特殊标记,并且可以定位能接触到的一个人使之不会迷失。
试问:(1)如果想确定离队首第n个人的位置,该怎么做?
(2)如果想将离队首第三个和第五个的人对调,请问如何做?
(3)如果想将队首和队尾连接起来,该怎么做?(本题5分)
(来源:数据结构→链表)

3.有100个球,球上印制着1-100的数字(每个球都不同),并且这些球采用了特殊材料,只有人正对着球时才看得清球上的数字,你只有一个人,并且一次只能拿起一个球的正面观察其数字,那么要将这些球按1-100的顺序排序,你有什么方法(本题10分)
(来源:数据结构与算法→排序)

1,就是用广播的方式,谁是谁叫回应,或者一个一个将消息传递,就是一个一个的找,有点像令牌网,在要求保密的情况下就是用令牌网加保密方式就可以了.
2,A,因为一个人的手里一定拿着下一个人的地址,这就是链表的结构,所以要找一个人,那就顺着表头依次找下去就是了,B,让第三个人的手里拿第六个人的地址,第五个人手里拿第四个人的地址就可以了,C,也就是让最后一个人手里拿第一个人的地址就可以了呀
3,这个就是用插入法就可以了,一个一个的拿,然后按顺序放就得了,另一种方法是比较麻烦,就是先找出第一个或最后一个,然后再找下一个就可以了,

南邮科协的复试题啊!第三题应该是通过比较大小排序的