十大排序算法总结
最近在准备面试, 看到一篇公众号总结的排序算法十分详细 面试常问的十个排序算法都在这里了(含JAVA代码实现) , 因此在这里记录下.
本文将采取文字描述 + 正确的java代码实现来讲解以下的十大排序算法:
- 冒泡排序
- 选择排序
- 插入排序
- 希尔排序
- 归并排序
- 快速排序
- 堆排序
- 计算排序
- 桶排序
- 基数排序
1. 冒泡排序
介绍
冒泡排序是一种简单的排序算法. 它重复的走访要排序的数列, 一次比较两个元素, 如果他们的顺序错误就把它们交换过来.
最近在准备面试, 看到一篇公众号总结的排序算法十分详细 面试常问的十个排序算法都在这里了(含JAVA代码实现) , 因此在这里记录下.
本文将采取文字描述 + 正确的java代码实现来讲解以下的十大排序算法:
冒泡排序是一种简单的排序算法. 它重复的走访要排序的数列, 一次比较两个元素, 如果他们的顺序错误就把它们交换过来.
单例模式是指一个类只有一个实例对象, 且该类能自行创建这个实例的一种模式.
该模式的特点为:
单例模式的优缺点:
缓存现在已经成为了互联网必不可少的利器,合理的利用缓存不仅能大大的提升网站的访问速度,还能够降低数据库的访问压力。
在上一篇文章中,介绍了 如何在 SpringBoot 中整合 Redis,接下来继续在其基础上介绍上如何利用 Spring Cache 与 Redis 来做缓存。
Redis 是完全开元免费的,遵守BSD协议,是一个高性能的 key-value 数据库。
Redis 与其他 key - value 缓存产品有以下三个特点:
Redis 的命令教学建议参考菜鸟教程的教程: https://www.runoob.com/redis/redis-tutorial.html
最近的项目中遇到了一个问题,我的后台管理系统是使用 Java 语言来开发的,然后有一个模块需要调用使用 Python 写的一个脚本,为此查了许多资料,在这里记录一下。
之前在朋友的推荐下放弃了以前使用的 Ubuntu,使用了 manjaro 作为我日常使用的 Linux,用了一段时间之后发现这个 Linux 发行版是真的香,以致于我换了电脑之后也想要迅速将 manjaro 安装回来。
在项目中经常会遇到需要在项目启动之前做一些初始化数据的操作,例如初始化线程池、初始化一些脚本等等。但是往往这些操作又需要在 Spring Beans
加载完成之后,因为需要依赖于一些 Spring Beans
。CommandLineRunner
可以很好的解决这个问题,继承了 ComandLineRunner
接口并且加上了 @Component
注解的类可以在 Spring Beans
都初始化之后,而又在 SpringApplication.run()
之前执行。下面来详细介绍 CommandLineRunner
的使用。
之前写了一篇 Spring Boot整合Shiro,如果不了解 Shiro
的建议先去阅读之前的文章,因为这篇是在它的基础上进行的拓展,需要您具备一定的 Shiro 知识。
之前所介绍的 Shiro 仅仅是针对单个 Realm 的使用,但是考虑一下以下场景:
在 Java 领域一般有 Spring Security、Apache Shiro 等安全框架,之前写了一篇关于 JWT整合Spring Security 的文章,里面介绍了使用 Spring Boot + JWT + Spring Security 来完成用户的登录与权限认证。
本文转载自:gulp优化hexo方法
gulp
通过对站点使用的静态资源进行压缩,来优化网站的访问速度。
首先安装 gulp
以及所需要的模块:
|
|
|
|
然后在博客的根目录下创建 gulpfile.js 文件写入代码: