元素唯一性问题元素唯一性问题(英語:element distinctness/uniqueness problem)是計算複雜性理論中判断列表内所有元素是否唯一的问题。关于这一问题的研究已经完备,可以通过许多不同的计算模型解决。其中一种方法就是通过给列表排序,检验是否存在连续相等元素;也可以借由随机化算法将元素插入哈希表中,比较放在哈希表相同位置元素,从而在线性时间复杂度解决这一问题。[1]通过将问题转化为查找问题可以最大程度优化算法的时间复杂度。 决策树的复杂度已知对于一组数字列表,其时间复杂度是O(n log n),或言之其时间复杂度的界限由代数决策树模型的线性对数所决定[2],而在决策树模型中数据不一定需要存入内存(插入哈希表中),只需要计算和比较运算树节点的代数值,这一解法又被称之为渐进最优算法。这一算法可以进一步优化为随机代数决策树。[3][4] 查找重复元素查找在在含有n项元素的多重集合(multiset)中查找出现超过n/k次的元素所需的时间复杂度为O(n log k),而元素唯一性问题是前一问题在k=n时的一个特例,决策树是这种算法的理想解决方案。[5]这种算法可以看成多数投票法(k=2时的特例)的一种归纳推演,两者在研究历史上关系相依。[6] 上述算法仅仅依赖于检验识别元素,如果可以排序,那么就可以利用基于顺序统计量的搜索算法。比方说,当k=2时,查找中位数的时间复杂度最低,进而方便检测是否有多余n/2个中位数元素,这种算法的比较次数比顺序统计算法来的少。[6] 相关条目参考资料
|
Index:
pl ar de en es fr it arz nl ja pt ceb sv uk vi war zh ru af ast az bg zh-min-nan bn be ca cs cy da et el eo eu fa gl ko hi hr id he ka la lv lt hu mk ms min no nn ce uz kk ro simple sk sl sr sh fi ta tt th tg azb tr ur zh-yue hy my ace als am an hyw ban bjn map-bms ba be-tarask bcl bpy bar bs br cv nv eml hif fo fy ga gd gu hak ha hsb io ig ilo ia ie os is jv kn ht ku ckb ky mrj lb lij li lmo mai mg ml zh-classical mr xmf mzn cdo mn nap new ne frr oc mhr or as pa pnb ps pms nds crh qu sa sah sco sq scn si sd szl su sw tl shn te bug vec vo wa wuu yi yo diq bat-smg zu lad kbd ang smn ab roa-rup frp arc gn av ay bh bi bo bxr cbk-zam co za dag ary se pdc dv dsb myv ext fur gv gag inh ki glk gan guw xal haw rw kbp pam csb kw km kv koi kg gom ks gcr lo lbe ltg lez nia ln jbo lg mt mi tw mwl mdf mnw nqo fj nah na nds-nl nrm nov om pi pag pap pfl pcd krc kaa ksh rm rue sm sat sc trv stq nso sn cu so srn kab roa-tara tet tpi to chr tum tk tyv udm ug vep fiu-vro vls wo xh zea ty ak bm ch ny ee ff got iu ik kl mad cr pih ami pwn pnt dz rmy rn sg st tn ss ti din chy ts kcg ve
Portal di Ensiklopedia Dunia