顺序查找和折半查找

news2025/1/11 8:57:21

顺序查找和折半查找

顺序查找

一、算法思想

顺序查找,又叫“线性查找”,通常用于线性表
算法思想:从头到尾挨个找(或者反过来也OK)

二、算法实现

结构体定义

typedef struct{
	ElemType *elem;
	int TableLen;
}SSTable;

1.不使用哨兵

在这里插入代码片

2.使用哨兵(0号位置存哨兵)

在这里插入代码片

优点:无需判断是否越界,效率更高

3.查找效率分析
ASL成功=(1+2+3+…+n)/n=(n+1)/2
ASL失败=n+1

三、算法优化

1.顺序查找的优化(有序表)
用查找判定树分析ASL
共有n+1种查找失败的情况(n+1个失败结点,n个成功结点)
ASL失败=(1+2+3+…+n+n)/(n+1)=n/2+n/(n+1)
一个成功结点的查找长度=自身所在层数
一个失败结点的查找长度=其父节点所在层数
默认情况下,各种失败情况或成功情况都等概率发生
在这里插入图片描述

2.顺序查找的优化(被查概率不相等)
被查概率大的放在靠前位置

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/635015.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot + Vue 的留守儿童系统的研究与实现

文章目录 1.研究背景2. 技术栈3.系统分析4系统设计5系统的详细设计与实现5.1系统功能模块5.2管理员功能模块 1.研究背景 以往的留守儿童爱心的管理,一般都是纸质文件来管理留守儿童爱心信息,传统的管理方式已经无法满足现代人们的需求;使用留…

变压器差动保护的影响因素和相应的措施

由于变压器一、二次电流、电压大小不同,相位不同,电流互感器特性差异,电源侧有励磁电流,都将造成不平衡电流流过继电器,必须采用相应措施消除不平衡电流的影响。 主要措施 (1)减小稳态情况下的…

SpringCloud学习笔记(四)RabbitMQ

一、同步通讯的优缺点 时效性较强,可以立即得到结果但是耦合度高,性能和吞吐能力下降有额外的资源消耗 二、异步通讯的优缺点 耦合度低,吞吐量提升故障隔离,流量削峰依赖于Broker的可靠性、安全性和吞吐能力 三、什么是MQ MQ…

物联网Lora模块从入门到精通(七)串口通讯

一、前言 在Lora模块的程序设计中,串口通信一定是一个极其重要且常用的通信方式,借助串口通信,我们不但可以向外传输我们获取的数据,还可以根据外部指令做出相应。 同样的,在例程中,为我们提供了一个名为us…

SSM简易项目实战(基本CRUD操作):速速来学+项目完整源码

前言:又是一年暑期将至,找实习?手里没几个项目恐怕不行,今天给各位带来一个较为简易的Web项目,快来学吧! 一、项目简介 1、云借阅图书管理系统 技术栈:(SpringSpringMVCMybatisMyS…

【面试必问】Spring核心之控制反转(IOC)

tip:作为程序员一定学习编程之道,一定要对代码的编写有追求,不能实现就完事了。我们应该让自己写的代码更加优雅,即使这会费时费力。 💕💕 推荐:体系化学习Java(Java面试专题&#…

驱动开发:内核封装WFP防火墙入门

WFP框架是微软推出来替代TDIHOOK传输层驱动接口网络通信的方案,其默认被设计为分层结构,该框架分别提供了用户态与内核态相同的AIP函数,在两种模式下均可以开发防火墙产品,以下代码我实现了一个简单的驱动过滤防火墙。 WFP 框架分…

触发器和事件自动化的讲解

触发器和事件自动化 一、触发器 1、触发器的基本概念 触发器是和表相关的一种数据库对象,可以将他看作一种特殊的存储过程,不需要人为调动的存储过程。 关键字:trigger 基本作用:通过对表进行数据的插入、更新或删除等操作来触…

UnityVR--AudioManager--音频管理中心

目录 前言 建立音频配置文件AudioConfig 建立音频管理AudioManager 使用AudioManager播放音效 前言 关于音频组件的简单使用请详见VideoPlayer&AudioSource,不过在一个工程项目中,会有很多的声音文件,播放的时间和条件也不相同&#…

【算法题】2614. 对角线上的质数

题目: 给你一个下标从 0 开始的二维整数数组 nums 。 返回位于 nums 至少一条 对角线 上的最大 质数 。如果任一对角线上均不存在质数,返回 0 。 注意: 如果某个整数大于 1 ,且不存在除 1 和自身之外的正整数因子,…

Docker环境下部署Ghost开源内容管理系统

Docker环境下部署Ghost开源内容管理系统 一、Ghost介绍1.1 Ghost简介1.2 Ghost特点 二、本地环境介绍2.1 本地环境规划2.2 本次实践介绍 三、本地环境检查3.1 检查Docker服务状态3.2 检查Docker版本3.3 检查docker compose 版本 四、下载Ghost镜像五、部署Ghost开源内容管理系统…

【linux工具备忘录】- tmux

文章目录 安装常用命令会话的进入和退出窗口创建、删除、切换窗口内的子窗口管理(创建/删除/切换)会话的后台托管管理 tmux的配置配置的创建配置重载修改前缀键更多使用说明 tmux的插件管理tpm插件管理器tmux-powerline 一个漂亮的底栏 安装 sudo apt install tmux常用命令 会…

分布式软件架构——RESTful服务

RESTful(Representational State Transfer) RESTful是一种网络应用程序的设计风格和开发方式,基于HTTP,可以使用XML格式定义或JSON格式定义。RESTFUL适用于移动互联网厂商作为业务接口的场景,实现第三方OTT调用移动网…

shell脚本基础2——条件语句、分支选择、循环语句

文章目录 一、条件语句二、分支选择三、循环语句3.1 for循环3.1.1 语法一3.1.2 语法二 3.2 while循环3.2.1 普通用法3.2.2 whileif判断循环3.2.3 特殊用法 3.3 until循环 四、break和continue4.1 break用法4.2 continue用法 五、自定义脚本退出状态码 一、条件语句 使用 if 语句…

XdsObjects .NET 8.45.1001.0 Crack

XdsObjects 是一个工具包,允许开发人员使用 IHE XDS 和 XDS-I 配置文件开发应用程序,只需花费最少的时间和精力,因为遵守配置文件和 ebXML 规则的所有艰苦工作都由该工具包处理。 它为所有角色提供客户端和服务器支持,包括&#…

【Spring MVC】学会这些你就会利用Spring Boot进行前后端交互了,美滋滋,距离编程世界更近一步了,何乐而不为呢 ? ? ?

前言: 大家好,我是良辰丫,! ! !💌💌💌 🧑个人主页:良辰针不戳 📖所属专栏:javaEE进阶篇之框架学习 🍎励志语句:生活也许会让我们遍体鳞伤,但最终这些伤口会成…

【仪器使用操作笔记】 TDS1012示波器基础原理与使用

今日要学习使用的是一台实验室老旧战损版TDS1012示波器,它长这样: 本文会从以下目录的几个方面全方位介绍示波器的一些基础运用: 目录 一、面板按键旋钮介绍: 整体面板介绍: 示波器探头接线与校准接线: …

一文弄懂java中的代理模式

文章目录 简介静态代理动态代理Cglib代理spring中AOP使用代理总结 简介 代理(Proxy)模式是一种结构型设计模式,提供了对目标对象另外的访问方式;即通过代理对象访问目标对象。 这样做的好处是:可以在目标对象实现的基础上,增强额…

Atcoder Beginner Contest 305——D-F题讲解

蒟蒻来讲题,还望大家喜。若哪有问题,大家尽可提! Hello, 大家好哇!本初中生蒟蒻讲解一下AtCoder Beginner Contest 305这场比赛的D-F题! D题 题外话 安利一波自己的洛谷博客:点这里 思路 这道题还是比…

Hazel游戏引擎(010)预编译头

文中若有代码、术语等错误,欢迎指正 文章目录 前言如何实现 前言 此节目的 由于项目中的头文件或者cpp文件都包含着c的头文件,有些重复,可以将它们包含的c头文件放在一个头文件内,这样不仅使代码简洁,而且预编译头可以…