ग्रोवर के एल्गोरिथ्म का उपयोग अन्य चीजों के अलावा, आइटम की अनियंत्रित सूची में आइटम को खोजने के लिए किया जाता है लंबाई । भले ही इस विषय के बारे में यहाँ बहुत सारे प्रश्न हैं, फिर भी मुझे यह बात याद आती है।
एक सूची में खोज, शास्त्रीय तरीका
आम तौर पर, मैं एक खोज समारोह इस तरह से डिजाइन होगा
लंबाई की सूची है ।
वांछित तत्व । मैं प्राप्त करना चाहिए । प्रत्येक कार्ड के साथ एन्कोड किया जा सकता बिट्स, सूची है इसलिए हम जरूरत तत्वों बिट्स सूची एन्कोड करने के लिए। इस स्थिति में, oracle फ़ंक्शन को लागू करेगा:
हालांकि, ग्रोवर के एल्गोरिथ्म का इनपुट क्विट की स्थिति नहीं है ।
(एनबी: शफ़ल डेक की छवि यहां से ली गई है )
ग्रोवर और उसके oracle
कई स्रोत (जैसे। यहाँ - आलेखीय रूप से समझाया गया है) कहते हैं कि एल्गोरिथ्म का इनपुट अलग है: इनपुट खोज स्थान से लिया गया एक राज्य है । । । , एन } = { 0 , 1 , 2 , । । । , 7 } जहां सूची के तत्वों की संख्या है। प्रत्येक संख्या सूची में एक तत्व की स्थिति से मेल खाती है।
के इनपुट अब एक है qubit वेक्टर , जो खोज स्थान S में सभी वस्तुओं का एक सुपरपोजिशन होना चाहिए ।
हम जानते है
- से मेल खाती ;
- से मेल खाती है ;
- से मेल खाती है ;
- मेल खाती है करने के लिए जो वांछित तत्व है;
- और इसी तरह...
इस मामले में हमारे पास
ओरेकल बिल्डिंग को पता है कि हमें आवश्यकता है स्थिति 5. बिंदु एल्गोरिथ्म निष्पादित करने के लिए करता है, तो हम पहले से ही आदेश ओरेकल के निर्माण के लिए तत्व के लिए खोज की है पर है?