跪求这两道数据结构题的答案!谢谢大家了 15

1.设有一个含n个元素的数组,数组元素为自然数,写出一个算法,将所有值为素数的元素排在所有值为奇数的元素之前,将所有值为奇数的元素排在所有值为偶数的元素之前,要求该算法的... 1.设有一个含n个元素的数组,数组元素为自然数,写出一个算法,将所有值为素数的元素排在所有值为奇数的元素之前,将所有值为奇数的元素排在所有值为偶数的元素之前,要求该算法的时间复杂度为O(n)。
2.编写一个算法判断无向连通图中是否有回路。
展开
galaas
2011-03-10 · TA获得超过370个赞
知道小有建树答主
回答量:191
采纳率:0%
帮助的人:194万
展开全部
题1,
遍历数组,如素数添加到素数链表,如奇数添加到奇数链表,如偶数添加到偶数链表,最后合并三个链表
判断素数时 可以先定义好允许范围内足够大的素数表,先查表判断,如超出表的范围,则从表中尝试选取例如50或100个不同的数利用费马小定理判断

题2,
设有i个节点,用2维数组V(i,i)表示图,用一维数组A(i)表示每个节点是否被访问,用队列L表示待访问列表
=>任选一个起始节点a,标记为已访问
=>将所有连通a的节点标记为已访问,并压入队列L,L中需要记录待访问节点名及其前溯(此处即a)
循环以下步骤:
从L中取出节点p,找到与p连通的非前溯节点,如这些节点已被访问,则存在回路跳出;
否则将这些节点标记为已访问并压入队列L(并记录其前溯p),直至队列为空
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式