ขั้นตอนวิธี ของ กลวิธีการค้นหาแบบฟีโบนัชชี

ให้ F คือแถวลำดับของจำนวนฟีโบนัชชี ให้ k คือค่าของข้อมูลใดๆในF nคือขนาดของแถวลำดับของข้อมูล ถ้า n เป็นเลขฟีโบนนัชชีให้ Fm=n แต่ถ้า n ไม่ใช่จำนวนฟีโบนัชชีให้ Fm เป็นจำนวนฟีโบนัชชีที่มากกว่า n แต่ใกล้เคียงที่สุด นิยามให้ค่าใน F เหมือนกับลำดับฟีโบนนัชชีโดยให้ Fk+2=Fk+1+Fk โดยที่ k≥0 ,F1=1 และ F0=0

การหาตำแหน่งของข้อมูลที่สนใจสามารถหาตำแหน่งได้โดยทำตามขั้นตอนต่อไปนี้
  1. ให้ k = m
  2. ถ้า k = 0 หมายความว่าไม่พบข้อมูลที่สนใจและให้เลิกทำ
  3. เปรียบเทียบข้อมูลในตำแหน่ง Fk กับตำแหน่ง Fk-1
  4. ถ้าตรงกับข้อมูลที่สนใจก็ให้จบการทำงาน
  5. ถ้าข้อมูลที่สนใจมีค่าน้อยกว่าข้อมูลในตำแหน่ง Fk-1 ให้ทิ้งข้อมูลตั้งแต่ตำแหน่ง Fk+1 ถึง n ให้ k = k-1 แล้วกลับไปทำขั้นตอนที่สองอีกครั้ง
  6. ถ้าข้อมูลที่สนใจมีค่ามากกว่าข้อมูลในตำแหน่ง Fk-1 ให้ทิ้งข้อมูลตั้งแต่ตำแหน่ง 1 ถึง Fk-1 เรียงตัวเลขที่เหลือใหม่จาก 1 ถึง Fk-2 ให้ k = k-2 แล้วกลับไปทำขั้นตอนที่สองใหม่อีกครั้ง


นอกจากนี้ยังมีขั้นตอนวิธีอื่นๆอีกดังต่อไปนี้

ให้ R เป็นตารางที่เก็บสถิติขนาด n ช่อง ให้ ที่มีการเพิ่มขึ้นของลำดับ K โดยที่ K1 < K2 < ... < Kn ขั้นตอนวิธีนี้จะหาข้อมูลที่ต้องการตามค่าของ K โดยจะสมมติว่า N+1 = Fk+1ซึ่งหาก N+1ไม่ใช่จำนวนฟีโบนัชชีก็ให้ใช้หลักเกณฑ์การเปลี่ยนเป็นจำนวนฟีโบนัชชีเช่นเดียวกับขั้นตอนวิธีแรก โดยให้ X เป็นข้อมูลที่ต้องการจะหา

ขั้นที่หนึ่ง ให้ i ← Fk,p ← Fk-1,q ← Fk-2 โดยจากขั้นตอนวิธีจะได้ว่า p และ q เป็นลำดับจำนวนฟีโบนัชชีที่ต่อเนื่องกันขั้นที่สอง ถ้า X < i ให้ไปทำขั้นที่สาม ถ้า X > i ให้ไปทำขั้นตอนที่สี่ แต่ถ้า X = i จะหมายถึงว่าค้นเจอตำแหน่งของข้อมูลแล้ว คำตอบคือที่ตำแหน่งk ให้จบการทำงานขั้นที่สาม ถ้า q = 0 จะหมายถึงว่าค้นไม่เจอข้อมูลที่ต้องการและให้จบการทำงาน ถ้าไม่เช่นนั้นให้ i ← i - q ให้ p ← q แล้วจึงให้ q ← q - p จากนั้นกลับไปทำขั้นตอนที่สองขั้นที่สี่ ถ้า p = 1 จะหมายถึงว่าค้นไม่เจอข้อมูลที่ต้องการและให้จบการทำงาน ถ้าไม่เช่นนั้นให้ i ← i + q ให้ p ← p - q แล้วจึงให้ q ← q - p จากนั้นกลับไปทำขั้นตอนที่สอง