课本源码部分

第9章  查找 - 斐波那契查找

——《数据结构》-严蔚敏.吴伟民版

       源码使用说明  链接☛☛☛ 《数据结构-C语言版》(严蔚敏,吴伟民版)课本源码+习题集解析使用说明

       课本源码合辑  链接☛☛☛ 《数据结构》课本源码合辑

       习题集全解析  链接☛☛☛ 《数据结构题集》习题解析合辑

       本源码引入的文件  链接☛ Base.c

      文档中源码及测试数据存放目录:数据结构\▲课本算法实现\▲09 查找\03 FibonacciSearch

概述

       斐波那契查找类似于二分查找,不同的是二分查找每次查找时会在查找范围上限的中点处比较,而斐波那契查找则在查找范围上限的一个斐波那契分割点上进行查找。

解析

       斐波那契查找就是在二分查找的基础上根据斐波那契数列进行分割的。在斐波那契数列找一个等于略大于查找表中元素个数的数F[n],将原查找表扩展为长度为F[n](如果要补充元素,则补充重复最后一个元素,直到满足F[n]个元素),完成后进行斐波那契分割,即F[n]个元素分割为前半部分F[n-1]个元素,后半部分F[n-2]个元素,找出要查找的元素在那一部分并递归,直到找到。

       斐波那契查找的优点是在确定下一个比对元素时,仅用加、减就可以计算得出,比二分查找的除法要节省时间。

源码

       文件一 ☛  FibonacciSearch.h 

       文件二 ☛  FibonacciSearch.c 

       文件三 ☛  FibonacciSearch-main.c (测试文档)

       文件四 ☛  TestData_Table.txt(查找表测试数据)

测试结果展示

       更多章节持续更新中...

转载于:https://www.cnblogs.com/kangjianwei101/p/5602332.html

9-3-斐波那契查找-查找-第9章-《数据结构》课本源码-严蔚敏吴伟民版相关推荐

  1. 我所知道查找算法之斐波拉契(黄金分割法)查找

    作者前言 大家好,我是阿濠,今篇内容跟大家分享的是查找算法之斐波那契(黄金分割法)查找,很高兴分享到segmentfault与大家一起学习交流,初次见面请大家多多关照,一起学习进步. 一.斐波那契数列 ...

  2. 数据结构与算法-查找算法(二分查找,插值查找,斐波那契(黄金分割法)查找)

    查找算法 以下三种算法的基本思想相同,都是利用递归来寻找 二分查找 思路分析 1.首先确定该数组的中间下标,min = (left + right) / 2 2.然后让需要查找的的数findVal和a ...

  3. 数据结构三大查找算法(二分查找、插值查找、斐波那契数列查找)C语言实现

    文章目录 查找 二分查找(折半查找) 插值查找 斐波拉契查找 总结: 查找 查找是在大量的信息里面寻找一个特定的信息元素 (1)静态查找和动态查找: 静态或者动态都是针对查找表而言的.动态表指查找表中 ...

  4. c语言斐波那契数列递归数组,C语言数据结构学习:递归之斐波那契数列

    自己对递归还是不太熟练,于是做的时候就很吃力,就是翻棋子直到棋盘上所有棋子的颜色一样为止,求最少翻多少次,方法是枚举递归.然后就打算先做另一道递归的题(从数组中取出n个元素的组合),但是同样在递归的问 ...

  5. 斐波那契(黄金分割)法查找:

    斐波那契(黄金分割法)查找算法: 斐波那契(黄金分割法)原理:**斐波那契查找**原理与前两种相似,仅仅改变了中间结点(mid)的位置,mid不再是中间或插值位于黄金割点附近,即==**mid=low ...

  6. 数据结构与算法--再谈递归与循环(斐波那契数列)

    再谈递归与循环 在某些算法中,可能需要重复计算相同的问题,通常我们可以选择用递归或者循环两种方法.递归是一个函数内部的调用这个函数自身.循环则是通过设置计算的初始值以及终止条件,在一个范围内重复运算. ...

  7. 数论 —— 斐波那契数列(Fibonacci)

    [概述] 斐波那契数列(Fibonacci sequence),又称黄金分割数列,其指的是这样一个数列:1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233,3 ...

  8. java 二分搜索获得大于目标数的第一位_程序员常用查找算法(顺序、二分、插值、分块、斐波那契)...

    顺序查找 基本思想 属于线性查找和无序查找,从一端开始顺序扫描,直到找到与目标值value相等的元素. 这是最基本的查找方法,也是时间复杂度最高的查找算法. 在数据过多时,这种方法并不适用. 代码实现 ...

  9. 二十三、斐波那契查找算法

    一.基本介绍 1.黄金分割点是指把一条线段分割为两部分,使其中一部分与全长之比等于另一部分与这部分之比.取其前三位 数字的近似值是 0.618.由于按此比例设计的造型十分美丽,因此称为黄金分割,也称为 ...

  10. java斐波那契查找_详解Java Fibonacci Search斐波那契搜索算法代码实现

    一, 斐波那契搜索算法简述 斐波那契搜索(Fibonacci search) ,又称斐波那契查找,是区间中单峰函数的搜索技术. 斐波那契搜索采用分而治之的方法,其中我们按照斐波那契数列对元素进行不均等 ...

最新文章

  1. ICRA 2021| 聚焦距离的Camera-IMU-UWB融合定位方法
  2. vMware vSphere 5.0发布时间
  3. mysql导出停机_MySQL自动停机的问题处理实战记录
  4. python3 正则表达式 嵌套表格_在Python中将嵌套结构与正则表达式匹配
  5. mysql的事物隔离级别
  6. Multi-Architecture镜像制作指南已到,请查收!
  7. python简单计算器下载安装到手机_python简单计算器
  8. C++习题之变量和基本类型
  9. 怎么python安装mysql库_python在windows上怎么安装mysql数据库
  10. 怎么样锁定计算机时间,电脑屏幕锁屏设置时间还是锁不了怎么办
  11. 域名解析邮箱服务器地址,邮件域名设置解析
  12. 【JAVA语言学习】Java面向对象Ⅲ
  13. 名称、系统服务-windows系统进程解析 -by小雨
  14. easypoi 语法_高中英语语法:高中英语必修1选修8全八册知识点总结
  15. 跨境电商适合做独立站吗,是入平台好还是独立站好?
  16. 平衡树学习笔记之 fhq Treap
  17. 微信{errcode:48001,errmsg:api unauthorized, hints: [ req_id: 1QoCla0699ns81 ]}
  18. 2019浙江计算机二级考试考纲,计算机二级考试大纲(2019全国计算机二级考试大纲)...
  19. 彻底关闭烦人的FF新推荐
  20. OSChina 周二乱弹 ——宅女喵 租男友 包吃住 100一天

热门文章

  1. TotalFinder for Mac(Finder增强工具)v1.14.1
  2. DMclone for Mac(磁盘克隆软件)
  3. 使用shell创建一个简单的菜单bash select用法
  4. Unity WebGL与IIS小坑
  5. javascript在使用时要注意的东西
  6. 小程序开发:python sanic 实现小程序登录注册
  7. 仅109美元 搞一套Evive物联网开发工具包回家耍
  8. 卡塔兰数(Catalan)
  9. FCKEditor报java.lang.NullPointerException
  10. matplotlib简介