一、查找算法

1、当我们在一个 链表 或者 顺序表查找 一个数据元素 是否存在 的时候,唯一的方法就是遍历整个表,这种方法称为 线性枚举。如果这时候,顺序表是有序的情况下,我们可以采用折半的方式去查找,这种方法称为 二分枚举。线性枚举 的时间复杂度为 O ( n ) ,二分枚举 的时间复杂度为 O ( l o g 2 n )
2、PLC查找数据一般使用场景:在博图软件中预先定义好数组,根据数组下标索引到数据;那这就是一个典型的底层实现结构是一个数组,数组类型可以是任意类型,而且数组下表是有序的,那我们完全可以使用折半查找代替遍历整个表,以此通过算法节省CPU扫描时间,提升设备相应速度!(如定义1…10,快速找到上位下发第N个数组下标所存储的数据);其优势在数组内容较大时明显

二、实现方式

输入需要查找数组的下标,点击遍历查询/二分法查询按钮,并显示查询时间与查询数组位置(案例默认1秒查询一次,便于比较两次查询结果);数组长度为10

1、遍历查找

2、二分法查找

3、从上图可看出二分法查找数组下标比遍历查询速度更快,时间更短;需要源程序与仿真可点击此链接

西门子PLC快速查找数据算法

西门子PLC快速查找数据算法相关推荐

  1. 索引 Index -- 快速查找数据

    文章目录 1. 为什么需要索引 2. 索引的需求定义 2.1 功能性需求 2.2 非功能性需求 3. 构建索引常用的数据结构 4. 总结 索引这种常用的技术解决思路,底层往往会依赖哪些数据结构? 1. ...

  2. 给我一个西门子plc采集大数据存储与分析方案

    对于西门子PLC采集大数据存储与分析方案,下面是一个建议: 数据采集: 在PLC中设置数据采集程序,以记录关键数据并定期发送到数据存储仓库. 数据存储: 使用大数据存储技术,例如 Hadoop.Spa ...

  3. C#读写西门子PLC中英文字符串数据的学习笔记

    最近由于需要对西门子PLC进行字符串类型数据的读写,才专门了解了一下西门子PLC字符串类型的数据的使用及存储形式.在PLC中: 一.String数据类型包含总字符数和当前字符数. String 类型提 ...

  4. java对字符串快查找_字符串快速查找 - Trie算法

    Trie算法 先对给定的字符串进行归集,形成一个多叉树形结构. 使用字符导航方式作匹配查找. trie算法有很多变种,以最左(前缀)匹配为例进行说明. 优点 使用字符导航查找方式,能最大限度减少字符比 ...

  5. 找出两列数据的差集_excel快速查找数据差异项

    近来在网上看到一则查找两列数据差异项的方法,试着做发现07版的excel根本就没有那个功能,而且设置过程也很麻烦,有那个功夫,不如去网上找函数公式解决.今天给大家分享一下用函数组合公式和自定义函数公式 ...

  6. Softing dataFEED OPC Suite将西门子PLC数据存储到Oracle数据库中

    一 背景 现代工业产品不仅生产批量大,而且过程自动化程度高,这对于用户追溯产品设计与制造过程中产生的数据而言,无疑是个新的挑战.与此同时,制造商们对产品制造过程中产生的大量工艺数据也愈发重视,并不断寻 ...

  7. 索引:如何在海量数据中快速查找某个数据?

    ------ 本文是学习算法的笔记,<数据结构与算法之美>,极客时间的课程 ------ 前面讲过MySQL数据库索引实现原理,底层是依赖B+树这种数据结构来实现的.那类似Redisp 这 ...

  8. 【索引】:如何在海量数据中快速查找某个数据?

    亲测可用,若有疑问请私信 在[B+树]:MySQL数据库索引是如何实现的?中,我们讲了MySQL数据库索引的实现原理.MySQL底层依赖的是B+树这种数据结构.那类似Redis这样的Key-Value ...

  9. Rabin-Karp 算法(字符串快速查找)

    Rabin-Karp 算法(字符串快速查找) 算法 代码 算法 Go 语言的 strings 包(strings.go)中用到了 Rabin-Karp 算法.Rabin-Karp 算法是基于这样的思路 ...

最新文章

  1. 输入对5层网络迭代次数的影响
  2. linux cat时间段,linux – cat / dev / urandom的输出是多么临时
  3. 四、hibernate实体对象,事务管理,锁
  4. 学校计算机编程用的什么软件,电脑编程软件都有哪些
  5. 当前上下文中不存在名称 ViewBag
  6. 知识图谱在教育行业的应用
  7. sp 导出unity哪个_SP与Unity的效果差异分析
  8. 动态规划-最短路径问题
  9. 黑桃怎么用html代码,index.html
  10. idea 控制台搜索快捷键
  11. java pfx_如何在Java中读取.pfx文件的内容?
  12. Python——伪随机数生成器
  13. 信息系统项目管理师核心考点(八)软件集成技术
  14. golang errors
  15. 简单弄懂配置github CND加速
  16. org.apache.http.NoHttpResponseException: failed to respond-服务端响应异常
  17. Java SE Development Kit8安装过程
  18. 与机器人chatGPT聊聊软件测试的热门话题
  19. 怎么关闭计算机主机控制面板,Win7系统PC输入面板怎么关闭?
  20. 京东一面:Nginx 禁止国外 IP 访问网站!

热门文章

  1. go语言 func函数
  2. python之三级菜单
  3. skynet 热更新
  4. mt6762/mt6765平台i2c驱动能力修改与波形优化
  5. 区块链在个性化推荐系统中的应用研究综述
  6. windows开启远程桌面,防火墙拦截:只允许特定IP远程
  7. 商务洽谈(谈判)步骤及技巧
  8. 洛谷P4196 半平面交
  9. 三星官方smdkv210 uboot移植到我的s5pv210开发板
  10. 借助磁盘修理工具解决Boot Camp助理的分区问题