Java复习(二)——算法与数据结构

排序

一、冒泡排序

先从数组中找到最大值或最小值放到数组最左端或最右端,然后在剩下的数字中找较大值或较小值,以此类推,知道数组有序排列。

时间复杂度:O(n^2)

二、直接插入排序

三、选择排序

四、shell排序

先将待排序数组分割成若干子序列分别进行插入排序,等整个序列"基本有序"时,再对整个数组进行一次直接插入排序。

快速排序的方法及其优化

------数据结构(单链表、顺序表、栈、队列)

(一)单链表习题(栈实现四则运算、KMP、两个栈实现队列、两个队列实现栈)

(二)快速排序(3种方法、2种优化)

(三)归并排序

(四)堆排序

相关推荐
疯狂打码的少年1 小时前
【数据库技术】关系模型基本概念(关系/属性/元组/键)
java·服务器·数据库·笔记
Mr数据杨3 小时前
【Codex】用学生入学评估模块建立新生能力画像
android·java·javascript·django·codex·项目开发
2601_962056233 小时前
Spring Boot 入门 与 无法解析符号 springframework 的解决
java·spring boot·后端
Thomas21433 小时前
Java scala 数组 链表
java·链表·scala
亚历克斯神4 小时前
低代码与 AI 的融合趋势——从可视化搭建到自然语言生成应用
java·spring·微服务
学长毕业设计4 小时前
基于SpringBoot的瑜伽馆网站的设计与实现(源码+文档+讲解视频)
java·spring boot·后端
一嘴一个橘子4 小时前
nginx 常用命令(在 nginx 目录下执行)
java
带多刺的玫瑰4 小时前
Leecode#9刷题之回文数
数据结构·算法
harmful_sheep4 小时前
java group by常见用法
java·开发语言·python
SKH.4 小时前
Linux软件编程(6)线程间通信
java·开发语言·数据库