java初级程序员必备的算法和数据结构入门只是,编程界的敲门砖,算法合集,简单详细
这里写目录标题
- 排序
- 排序的分类
- 冒泡排序:
- 如何判断是否为排序好的数组
- 选择排序
- 注意事项:
- 递归
- 递归案例
- 折半查找 二分查找
- 折半查找的代码查询
- 二分查找之递归查询
- 时间复杂度和空间复杂度
排序
排序的分类
我们之前通过代码实现的排序就是内排序
我们如果想要真正的学会,必须要掌握简单选择排序和冒泡排序
冒泡排序:
冒泡排序的话就是两两相比较,把最大的移到最前面
代码:
上面只是第一趟,那么已经确定了一个最大值,那么接下来比较,只需要比较6次即可
总体一结合就是这样
如何判断是否为排序好的数组
在第一个数组内部,定义一个布尔类型的变量,如果在进入循环的时候,把结构设置为true,也就是第一次排序后,没有任何移动的话,那么数组布尔就不会变成false
选择排序
选择排序,其实就是在例表中寻找最小值,然后把他移到前面
全部效果
注意事项:
递归
递归案例
实现斐泼那契数列
折半查找 二分查找
掌握二分查找的过程,其因为是有序排列的列表结构,其原理就是有一个头部,尾部,然后中间值
如果查找75的话,会从中间值开始计算,是在前面,还是在后面,如果在前面,那么尾部就会跑到一开始的中间位置
如果是小于中间值,那么尾部就会移到中间位置加1
如果是大于中间值,那么尾部就会移到中间位置减1
通过这种方式快捷查找
折半查找的代码查询
上面只是走一次的
但是我们判断可不止是简单的走一次,需要循环判断,直到筛选出结果
输入方法调用
在数组中有一个方法:
同样也是应用了二分查找的方法
二分查找之递归查询
使用递归来代替之前的循环
时间复杂度和空间复杂度
java初级程序员必备的算法和数据结构入门只是,编程界的敲门砖,算法合集,简单详细相关推荐
- 524页《Java中高级程序员必备核心知识》总结,令人犹如醍醐灌顶
说在前面 知乎上有个很热门的话题:中国的程序员数量是否已经饱和或者过剩? 今年大家都有一个共同的感受:工作不好找,面试越来越难. 其实,造成这种现象不仅是因为今年受疫情影响,倒闭了很多公司,很多公司缩 ...
- 总结《Java中高级程序员必备核心知识》,令人犹如醍醐灌顶
说在前面 知乎上有个很热门的话题:中国的程序员数量是否已经饱和或者过剩? 今年大家都有一个共同的感受:工作不好找,面试越来越难. 其实,造成这种现象不仅是因为今年受疫情影响,倒闭了很多公司,很多公司缩 ...
- java初级程序员考试_Java初级程序员必须要知道的10个基础面试题
Java初级程序员一般在业内定义为刚毕业或者工作1-2年的新人,对于Java初级程序员,经常面试中会被问到很多基础知识,因为基础知识可以考察个人对专业知识的基础有多扎实. Java 关于基础面试题小编 ...
- 初级程序员软考重点6 数据结构与算法
初级程序员软考重点6:数据结构与算法 一.数据结构和算法 1. 逻辑结构 (1)线性结构 (2)非线性结构 2. 存储结构 3. 顺序表 4. 链表 二.数组和字符串 三.矩阵 1. 特殊矩阵 2. ...
- java初级程序员简历上不能写,但是不能不会的项目!
今天给大家讲讲找工作之前要练习写哪些项目,简历上的项目经验怎么写(初级程序员,没有工作过的实习生). 目录 一:练习哪些项目 二:简历上应该怎么写 一:练习哪些项目 1.J2SE记账本 本项目是基于S ...
- java初级程序员提高_初级Java程序员如何发展、晋升?
近年来,Java培训非常火热,因为通过学习Java编程语言可以快速获得就业,这无疑是毕业生就业压力大的捷径.在学习Java编程之后,你能仅仅是一个Java程序员吗?或者是Java程序员,具体的位置是什 ...
- 为什么现在JAVA初级程序员要求这么高?
点击上方关注 "终端研发部" 设为"星标",和你一起掌握更多数据库知识 据我所知,如同18年的Python,学的人越多,越容易供大于求,越容易卷,要求越高! 当 ...
- 解答Java初级程序员该如何解决这些问题
1.怎么样可以尽快拿到offer? 针对心仪的企业.岗位进行调查.可以上招聘网站看看其岗位要求,以及企业的面试题.然后针对性的学习其要求的技术.这样有针对性的准备,投其所好,就可更快的获取你象要的of ...
- Java初级程序员与ChatGPT(文心一言)使用感受
前言: 随着23年三月初开始ChatGPT迅速发展,爆红网络.也有不少人说这个东西会顶替程序员.刚好身边同事有一个需要是读取word文档中的内容,保存到数据库. 我们就用百度的文心一言试下吧. 交互开 ...
- google浏览器插件 开发 获取页面指定数据_程序员必备的4款Chrome插件,编程神器...
一直有粉丝留言,想要大侠推荐几款程序员使用的插件,大侠特意去问了隔壁的程序员哥哥,终于被我问出了这4款编程神器!这4款插件不仅仅是提高效率那么简单哦,还可以让你的Chrome浏览器变得高端大气,一起来 ...
最新文章
- 参加UI设计培训要学多久
- oracle job的迁移
- Mysql性能优化实践
- vue 分模块打包 脚手架_vue-cli分模块独立打包
- Linux查看CPU型号及内存频率及其它信息与清理内存的命令
- 《剑指offer》孩子们的游戏---约瑟夫问题
- 统计学作业4 概念
- 7.UrlHelper
- COMSOL Multiphysics 多物理场仿真学习小记
- 计组实验-CPU设计-指令添加
- MongoDB的一些基本使用
- 道士后期时的技能运用有哪些
- Linux安装glassfish、利用glassfish部署应用
- 安全狗2周年“全民大抽奖”活动
- 不用action提交表单——JS实现
- 物流订舱运输成本 广州力其
- 服务器ras6000系列,再看IBM System x M3系列服务器的RAS特性
- java json导入excel_java 导入json生成excel
- 在全球超大规模协作中寻找创新机会:远程协作、分布式、开源、新型组织、群体智能...
- 电脑考证必须用五笔输入吗
热门文章
- 哎呀,人家不小心变油腻了呢
- c语言中数字符的知识点,2019年全国计算机二级C语言必背知识点总结
- linux wsdl2java_Web Service开发之利用WSDL生成Java工程
- 【情感识别】基于matlab KNN算法语音情感识别【含Matlab源码 542期】
- 【优化选址】基于matlab穷举法求解小区基站选址优化问题【含Matlab源码 439期】
- 【风电功率预测】基于matlab粒子群算法优化BP神经网络风电功率预测【含Matlab源码 347期】
- java jlist组件_Java中Jlist的Swing组件
- mysql数据库计算全部女生_数据分析mysql入门到精通(1)
- Latex:利用BibTeX批量导入参考文献
- c++ sort排序函数