Knowledge

Element distinctness problem

Source đź“ť

189:) and that all solutions require this many comparisons. In these models of computation, the input numbers may not be used to index the computer's memory (as in the hash table solution) but may only be accessed by computing and comparing simple algebraic functions of their values. For these models, an algorithm based on 57:
Several lower bounds in computational complexity are proved by reducing the element distinctness problem to the problem in question, i.e., by demonstrating that the solution of the element uniqueness problem may be quickly found after solving the problem in question.
220:
model with an instruction set that includes addition, subtraction and multiplication of real numbers, as well as comparison and either division or remaindering ("floor"). It follows that the problem's complexity in this model is also
259:. This RAM model covers more algorithms than the algebraic decision-tree model, as it encompasses algorithms that use indexing into tables. However, in this model all program steps are counted, not just decisions. 389:
first proved a tight lower bound when the size of the range is sufficiently large. Ambainis and Kutin independently (and via different proofs) extended his work to obtain the lower bound for all functions.
257: 130: 379: 492: 183: 150: 518: 430: 450: 84: 810: 386: 17: 730:
Ben-Amram, Amir M.; Berkman, Omer; Petersen, Holger (2003), "Element distinctness on one-tape Turing machines: a complete solution.",
193:
solves the problem within a constant factor of the best possible number of comparisons. The same lower bound applies as well to the
453: 399: 46:
the list and then checking if there are any consecutive equal elements; it may also be solved in linear expected time by a
959: 594: 559: 28: 844:"Polynomial Degree and Lower Bounds in Quantum Complexity: Collision and Element Distinctness with Small Range" 626:; Heide, Friedhelm Meyer; Smolensky, Roman (1996), "A lower bound for randomized algebraic decision trees", 224: 97: 769: 664:(1999), "Complexity lower bounds for randomized computation trees over zero characteristic fields", 42:
It is a well studied problem in many different models of computation. The problem may be solved by
340: 201: 91: 459: 198: 186: 159: 135: 47: 8: 883: 848: 521: 497: 407: 814: 778: 747: 681: 643: 574: 435: 69: 929: 533: 334: 751: 685: 578: 156:, meaning that the problem can be solved in a number of comparisons proportional to 933: 925: 892: 857: 824: 788: 739: 712: 673: 647: 635: 599: 564: 764: 623: 382: 190: 661: 619: 268: 194: 153: 39:
is the problem of determining whether all the elements of a list are distinct.
897: 878: 862: 843: 828: 792: 743: 716: 54:
and compares only those elements that are placed in the same hash table cell.
953: 554: 87: 807:
Quantum lower bounds for the collision and the element distinctness problems
494:. The element distinctness problem is a special case of this problem where 677: 604: 569: 913: 819: 783: 213: 703:(2001), "Topological Lower Bounds on Algebraic Random Access Machines", 592:
Ben-Or, Michael (1983), "Lower bounds for algebraic computation trees",
639: 51: 938: 700: 217: 43: 879:"Quantum Lower Bound for the Collision Problem with Small Range" 618: 552: 66:
The number of comparisons needed to solve the problem of size
307:, while on a nondeterministic machine the time complexity is 393: 767:(2007), "Quantum walk algorithm for element distinctness", 729: 557:(1990), "Not all keys can be hashed in constant time", 86:, in a comparison-based model of computation such as a 343: 500: 462: 438: 410: 227: 162: 138: 100: 72: 512: 486: 452:may be found by a comparison-based algorithm, the 444: 424: 373: 251: 177: 144: 124: 78: 951: 595:Proc. 15th ACM Symposium on Theory of Computing 560:Proc. 22nd ACM Symposium on Theory of Computing 216:, the decision-tree lower bound extends to the 698: 811:Symposium on Foundations of Computer Science 262: 61: 911: 937: 896: 861: 818: 782: 660: 603: 568: 394:Generalization: Finding repeated elements 841: 763: 14: 952: 591: 207: 916:(1982), "Finding repeated elements", 876: 381:queries. The optimal algorithm is by 329: 804: 454:Misra–Gries heavy hitters algorithm 400:Misra–Gries heavy hitters algorithm 212:If the elements in the problem are 24: 553:Gil, J.; Meyer auf der Heide, F.; 520:. This time is optimal under the 344: 337:can solve this problem faster, in 228: 139: 101: 25: 971: 252:{\displaystyle \Theta (n\log n)} 125:{\displaystyle \Theta (n\log n)} 918:Science of Computer Programming 905: 870: 29:computational complexity theory 835: 798: 757: 723: 692: 654: 612: 585: 546: 481: 466: 404:Elements that occur more than 368: 347: 246: 231: 119: 104: 50:that inserts each item into a 13: 1: 539: 374:{\textstyle \Theta (n^{2/3})} 930:10.1016/0167-6423(82)90012-0 432:times in a multiset of size 267:A single-tape deterministic 33:element distinctness problem 7: 527: 271:can solve the problem, for 10: 976: 809:. Proceedings of the 43rd 487:{\displaystyle O(n\log k)} 397: 218:real random-access machine 37:element uniqueness problem 18:Element uniqueness problem 898:10.4086/toc.2005.v001a002 863:10.4086/toc.2005.v001a003 829:10.1109/SFCS.2002.1181975 793:10.1137/S0097539705447311 770:SIAM Journal on Computing 744:10.1007/s00236-003-0125-8 717:10.1137/S0097539797329397 705:SIAM Journal on Computing 263:Turing Machine complexity 960:Polynomial-time problems 666:Computational Complexity 628:Computational Complexity 62:Decision tree complexity 202:algebraic decision tree 178:{\displaystyle n\log n} 145:{\displaystyle \Theta } 92:algebraic decision tree 514: 488: 446: 426: 375: 253: 197:of comparisons in the 179: 146: 126: 80: 842:Ambainis, A. (2005). 678:10.1007/s000370050002 605:10.1145/800061.808735 570:10.1145/100216.100247 515: 489: 447: 427: 376: 254: 187:linearithmic function 180: 147: 127: 81: 813:. pp. 513–519. 699:Ben-Amram, Amir M.; 563:, pp. 244–253, 498: 460: 436: 408: 341: 225: 160: 136: 98: 70: 48:randomized algorithm 884:Theory of Computing 849:Theory of Computing 522:decision tree model 513:{\displaystyle k=n} 425:{\displaystyle n/k} 285:bits each, in time 208:Real RAM Complexity 877:Kutin, S. (2005). 640:10.1007/BF01270387 598:, pp. 80–86, 510: 484: 442: 422: 371: 335:Quantum algorithms 330:Quantum complexity 249: 175: 154:big theta notation 142: 122: 76: 534:Collision problem 445:{\displaystyle n} 79:{\displaystyle n} 16:(Redirected from 967: 944: 942: 941: 909: 903: 902: 900: 874: 868: 867: 865: 839: 833: 832: 822: 820:quant-ph/0112086 805:Shi, Y. (2002). 802: 796: 795: 786: 784:quant-ph/0311001 765:Ambainis, Andris 761: 755: 754: 732:Acta Informatica 727: 721: 719: 696: 690: 688: 658: 652: 650: 624:Karpinski, Marek 616: 610: 608: 607: 589: 583: 581: 572: 550: 524:of computation. 519: 517: 516: 511: 493: 491: 490: 485: 451: 449: 448: 443: 431: 429: 428: 423: 418: 380: 378: 377: 372: 367: 366: 362: 325: 306: 284: 258: 256: 255: 250: 184: 182: 181: 176: 151: 149: 148: 143: 131: 129: 128: 123: 85: 83: 82: 77: 21: 975: 974: 970: 969: 968: 966: 965: 964: 950: 949: 948: 947: 910: 906: 875: 871: 840: 836: 803: 799: 762: 758: 728: 724: 697: 693: 662:Grigoriev, Dima 659: 655: 620:Grigoriev, Dima 617: 613: 590: 586: 551: 547: 542: 530: 499: 496: 495: 461: 458: 457: 437: 434: 433: 414: 409: 406: 405: 402: 396: 383:Andris Ambainis 358: 354: 350: 342: 339: 338: 332: 308: 286: 276: 265: 226: 223: 222: 210: 195:expected number 191:comparison sort 161: 158: 157: 137: 134: 133: 99: 96: 95: 71: 68: 67: 64: 23: 22: 15: 12: 11: 5: 973: 963: 962: 946: 945: 924:(2): 143–152, 904: 869: 834: 797: 777:(1): 210–239, 756: 722: 711:(3): 722–761, 691: 672:(4): 316–329, 653: 611: 584: 544: 543: 541: 538: 537: 536: 529: 526: 509: 506: 503: 483: 480: 477: 474: 471: 468: 465: 441: 421: 417: 413: 398:Main article: 395: 392: 370: 365: 361: 357: 353: 349: 346: 331: 328: 269:Turing machine 264: 261: 248: 245: 242: 239: 236: 233: 230: 209: 206: 174: 171: 168: 165: 141: 121: 118: 115: 112: 109: 106: 103: 75: 63: 60: 9: 6: 4: 3: 2: 972: 961: 958: 957: 955: 940: 935: 931: 927: 923: 919: 915: 908: 899: 894: 890: 886: 885: 880: 873: 864: 859: 855: 851: 850: 845: 838: 830: 826: 821: 816: 812: 808: 801: 794: 790: 785: 780: 776: 772: 771: 766: 760: 753: 749: 745: 741: 737: 733: 726: 718: 714: 710: 706: 702: 695: 687: 683: 679: 675: 671: 667: 663: 657: 649: 645: 641: 637: 633: 629: 625: 621: 615: 606: 601: 597: 596: 588: 580: 576: 571: 566: 562: 561: 556: 555:Wigderson, A. 549: 545: 535: 532: 531: 525: 523: 507: 504: 501: 478: 475: 472: 469: 463: 455: 439: 419: 415: 411: 401: 391: 388: 384: 363: 359: 355: 351: 336: 327: 323: 319: 315: 311: 304: 300: 296: 293: 289: 283: 279: 274: 270: 260: 243: 240: 237: 234: 219: 215: 205: 203: 200: 196: 192: 188: 172: 169: 166: 163: 155: 116: 113: 110: 107: 93: 89: 88:decision tree 73: 59: 55: 53: 49: 45: 40: 38: 34: 30: 19: 921: 917: 907: 891:(1): 29–36. 888: 882: 872: 856:(1): 37–46. 853: 847: 837: 806: 800: 774: 768: 759: 738:(2): 81–94, 735: 731: 725: 708: 704: 694: 669: 665: 656: 631: 627: 614: 593: 587: 558: 548: 403: 333: 321: 317: 313: 309: 302: 298: 294: 291: 287: 281: 280:≥ log 277: 275:elements of 272: 266: 214:real numbers 211: 65: 56: 41: 36: 32: 26: 912:Misra, J.; 701:Galil, Zvi 634:(4): 357, 540:References 456:, in time 387:Yaoyun Shi 199:randomized 52:hash table 939:1813/6345 914:Gries, D. 476:⁡ 345:Θ 241:⁡ 229:Θ 170:⁡ 140:Θ 114:⁡ 102:Θ 954:Category 752:24821585 686:10641238 579:11943779 528:See also 152:invokes 132:. Here, 648:1462184 301:+2–log 204:model. 44:sorting 750:  684:  646:  577:  320:+ log 31:, the 815:arXiv 779:arXiv 748:S2CID 682:S2CID 644:S2CID 575:S2CID 94:, is 934:hdl 926:doi 893:doi 858:doi 825:doi 789:doi 740:doi 713:doi 674:doi 636:doi 600:doi 565:doi 473:log 238:log 185:(a 167:log 111:log 90:or 35:or 27:In 956:: 932:, 920:, 887:. 881:. 852:. 846:. 823:. 787:, 775:37 773:, 746:, 736:40 734:, 709:31 707:, 680:, 668:, 642:, 630:, 622:; 573:, 385:. 326:. 324:)) 314:nm 305:)) 943:. 936:: 928:: 922:2 901:. 895:: 889:1 866:. 860:: 854:1 831:. 827:: 817:: 791:: 781:: 742:: 720:. 715:: 689:. 676:: 670:8 651:. 638:: 632:6 609:. 602:: 582:. 567:: 508:n 505:= 502:k 482:) 479:k 470:n 467:( 464:O 440:n 420:k 416:/ 412:n 369:) 364:3 360:/ 356:2 352:n 348:( 322:m 318:n 316:( 312:( 310:O 303:n 299:m 297:( 295:m 292:n 290:( 288:O 282:n 278:m 273:n 247:) 244:n 235:n 232:( 173:n 164:n 120:) 117:n 108:n 105:( 74:n 20:)

Index

Element uniqueness problem
computational complexity theory
sorting
randomized algorithm
hash table
decision tree
algebraic decision tree
big theta notation
linearithmic function
comparison sort
expected number
randomized
algebraic decision tree
real numbers
real random-access machine
Turing machine
Quantum algorithms
Andris Ambainis
Yaoyun Shi
Misra–Gries heavy hitters algorithm
Misra–Gries heavy hitters algorithm
decision tree model
Collision problem
Wigderson, A.
Proc. 22nd ACM Symposium on Theory of Computing
doi
10.1145/100216.100247
S2CID
11943779
Proc. 15th ACM Symposium on Theory of Computing

Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.

↑