| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Java知识库 -> 数组中的查找算法和二分查找算法—Java语言实现 -> 正文阅读 |
|
[Java知识库]数组中的查找算法和二分查找算法—Java语言实现 |
数组中的查找算法和二分查找算法-Java语言实现前言以前大二的时候,为了激发学妹们对编程的兴趣,我决定给她们分享一些编程的技能。由于之前给学弟分享过解一元二次方程-Java语言实现,所以要是这次还是给学妹们分享一样的知识,大概会显得我很low吧,我也会因此失去她们的宠幸。 我一直苦苦思索,该给她们分享什么好呢…… 突然有个长得很乖的学妹跟我说,想找男朋友。于是我计上心头,干脆我给她们写一个查找算法吧,但是只写一个查找算法怕是无法满足学妹们对知识的渴望,她们对知识的如狼似虎般的心,我是深有体会的…… 学妹露出邪魅的一笑对我说,她想快点找到男朋友 我一听就明白了,果然女孩子做什么事都喜欢快一点亦或是更快一点 她这句话给我了灵感,直接查找太慢,我再优化一下,整个二分查找算法不是更快了吗?这样肯定能满足她们了吧 说干就干,于是我便理清思路开始写代码 正文我跟学妹们解释,在大学里找到合适的男朋友就像是从数组中查找到你要找的数一样 首先,创建一个能存储10个元素的int型数组
然后输入要查询的数字,再跟数组里的元素进行比较
如果迭代变量i已经超出了数组的长度,那么输出没找到 下面是完整的代码
二分搜索算法上面写的最最最垃圾的搜索算法,无脑+暴力 下面我们来写有技术含量的折半查找 这次我们需要创建的是一个按照升序排列的数组
然后定义几个变量
现在正式开始查找
如果查找的数是6,那么如下面的图所示 要是low的值大于了high的值,说明这整个数组已经遍历完了,但是还是没有找到我们要查找的数,所以只能输出找不到 完整代码如下:
总结我们能很清楚的知道,暴力查找算法的时间复杂度是O(n) 而折半查找算法的时间复杂度为O( l o g 2 n {log_2{n}} log2?n) 所以当数组中的元素越多时,折半查找所展示出来的算法优越性就越好 后续于是我终于满足了学妹们,她们对折半查找非常满意,毕竟这能让她们更快的找到男朋友 然后,结果是……
今天的分享就到这里,我们下期见~
|
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 | -2024/12/18 17:50:36- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |