美文网首页
2018-03-30 算法 :查找简介

2018-03-30 算法 :查找简介

作者: Ceilen | 来源:发表于2018-04-01 15:25 被阅读0次

世界上没有最好的算法,只有最合适的算法

查找算法:静态查找,动态查找

静态查找(一般使用线性表)的分类:

顺序查找 O(N),无序表

有序表查找

折半查找O(log2N)    low与high的下标相同时,退出

插值查找(比例查找),如果数据增长很均匀,效率非常高 。O(log2N)   ,两种查找的mid取值不同

斐波那契查找,生成斐波那契数列,分割点按照斐波那契数列的值来进行取分割

线性索引查找

索引是对于无序存储的数据,建立索引,相当于变成有序的,索引里会存储对应的数据的地址以及关键码。

稠密索引:(妈妈的小本子)对关键码进行排序的叫做稠密索引,但是当数据是海量数据时,对于关键码的排序也是复杂的,效果性能反而可能下降,因为会反复读取硬盘以及内存(每一条数据对应一条关键码)

分块索引:(图书馆找书)快间有序,块内无序

倒排索引:(搜索引擎搜索原理),为什么叫倒排索引呢,因为之前的查找都是根据记录的值来生成找关键字,然后找到这个关键字,而倒排索引是先生成关键字,根据关键字的数量,自动生成记录,所以不需要查找记录,所以这个效率非常高 

相关文章

  • 2018-03-30 算法 :查找简介

    世界上没有最好的算法,只有最合适的算法 查找算法:静态查找,动态查找 静态查找(一般使用线性表)的分类: 顺序查找...

  • 排序算法

    算法与数据结构基础 查找算法: 二分查找法: 简介:二分查找法又被称为折半查找法,用于预排序的查找问题 过程: 如...

  • 二分查找

    简介 二分查找(Binary Search)算法,也叫折半查找算法。在给顺序表结构中(也就是数组)快速查找某一个值...

  • 二分查找--基于python

    简介 二分查找是查找中常用的算法,时间复杂度为O(logn)(时间复杂度用来衡量一个算法查找的时间效率,是最糟糕的...

  • 《算法图解》读书笔记

    章节目录: 算法简介为阅读后续内容打下基础编写第一种查找算法—二分查找学习如何谈论算法的运行时间—大O表示法。了解...

  • Rabin-Karp算法在go的实现

    原文链接 github 简介 Rabin-Karp字符串快速查找算法和FNV hash算法是golang中stri...

  • Java 实现二分查找

    简介 二分查找,又叫折半查找,是一种查询效率非常高的查找算法,其实我更喜欢叫“折半查找”,一听这名字就知道每次在所...

  • 笔记:《图解算法》(已完结)

    第一章 算法简介 1.1引言 算法是一组完成任务的指令。 1.2二分查找 二分查找是一种算法,其输入是一个有序的元...

  • KMP

    简介 用于子字符串查找 首先是暴力查找 最坏时间复杂度为O(N*M) KMP算法思想 暴力查找之所以慢是因为它每次...

  • 读书笔记:图解算法

    读书笔记:图解算法 算法简介 二分查找 O(log n) 大O表示法 大O表示法 让你能够比较操作数,它指出了算法...

网友评论

      本文标题:2018-03-30 算法 :查找简介

      本文链接:https://www.haomeiwen.com/subject/ugzbcftx.html