返回主页

[数据结构 P2084] 已知一个整数序列 ,其中 。若存在 且 ,则称 为 的主元素。例如 ,则

 
学习人数: 96
 
正确率: ??%
答案解析

题目描述
未通过

已知一个整数序列 A=(a0,a1,…,an−1) ,其中 0≤ai<n(0≤i<n) 。若存在 ap1=ap2=⋯=apm=x 且 m>n/2(0≤pk<n,1≤k≤m) ,则称 x 为 A 的主元素。例如 A=(0,5,5,3,5,7,5,5) ,则 5 为主元素;又如 A=(0,5,5,3,5,1,5,7) ,则 A 中没有主元素。假设 A 中的 n 个元素保存在一个一维数组中,请设计一个尽可能高效的算法,找出 A 的主元素。若存在主元素,则输出该元素;否则输出 −1 。要求:

⑴ 给出算法的基本设计思想。

⑵ 根据设计思想,采用C、C++或Java语言描述算法,关键之处给出注释。

⑶ 说明你所设计算法的时间复杂度和空间复杂度。


上一题
下一题
加入错题本
个人笔记

登录后提交答案


暂无评论,来抢沙发