算法中的O(1), O(n),O(logn), O(nlogn)
O(1)最低的时空复杂度,耗时/耗空间与输入数据大小无关,无论输入数据增大多少倍,耗时/耗空间都不变。比如哈希算法。 O(n)代表数据量增大几倍,耗时也增大几倍。比如遍历算法。 O(logn)当数据增大n倍时,耗时增大logn倍(这里的log是以2为底的,比如,当数据增大256倍时,耗时只增大8倍,是比线性还要低的时间复杂度)。比如二分查找算法。 O(nlogn)就是n乘以logn,当数
计算机中为什么要用二进制
1、二进制只有两个数码;2、二进制的四则运算规则简单;3、可以节省设备;4、二进制的符号【1】和【0】恰好与逻辑运算中的【对】与【错】对应。
Spark的工作原理
什么是RDD全称为Resillient Distributed Dataset,即弹性分布式数据集,RDD通过Hadoop上的文件,即HDFS文件进行创建,也可以通过程序中的集合来创建。 RDD的特点弹性:RDD数据默认情况下存放在内存中,但是在内存资源不足时,Spark也会自动将RDD数据写入磁盘;分布式:RDD在抽象上来说是一种元素数据的集合,通过分区在不同节点上从而达到并行操作;容错性
dbms是什么的简称
dbmsDBMS 是(Database Management System)数据库管理系统的简称
hadoop三大组件
MapReduceMapReduce是什么?1、 MapReduce是一种分布式计算框架 ;2、MR有两个阶段组成:Map和Reduce,用户只需实现map()和reduce()两个函数,即可实现分布式计算;3、Map()负责把一个大的block块进行切片并计算;4、Reduce() 负责把Map()切片的数据进行汇总、计算。MapReduce怎么做?1、对输入的数据进行切片,每个切片分配一个
Maven 仓库 mvnrepository
仓库地址https://mvnrepository.com/
自定义异常
RuntimeException异常自定义 public class ServiceException extends RuntimeException { public ServiceException() { super(); } public ServiceException(String message) { super(mess
transient关键词的概述
transient的作用1、类中某个变量如果被transient修饰,变量将不再是对象持久化的一部分,该变量内容在序列化后无法获得访问。2、transient关键字只能修饰变量,而不能修饰方法和类。注意,本地变量是不能被transient关键字修饰的。变量如果是用户自定义类变量,则该类需要实现Serializable接口。3、被transient关键字修饰的变量不再能被序列化,一个静态变量不管
IDEA创建Flink项目
查询Flink版本https://flink.apache.org/zh/downloads.html 创建项目注意,第三步需要填入信息如下:groupId:org.apache.flinkartifactId:flink-learn-javaversion:1.16.0或者其他版本点击Add,然后create即可。等待项目构建(这里时间较长) 项目完成
JUC的概述
什么是JUCjava.util .concurrent 工具包的简称。这是一个处理线程的工具包,JDK1.5 才有。 进程与线程进程(Process):是计算机中的程序关于某数据集合上的一次运行活动;是系统进行资源分配和调度的基本单位;是操作系统结构的基础; 进程是线程的容器;进程是程序的实体。简说:指在系统中正在运行的一个应用程序;程序一旦运行就是进程;进程是资源分配的最小单位。线程(th
JVM的概述
推荐链接https://www.kuangstudy.com/bbs/1557549426359590914https://www.bilibili.com/video/BV1iJ411d7jS
内存溢出和内存泄露
内存溢出内存溢出是指程序在申请内存时,没有足够的内存空间供其使用, 系统已经不能再分配出你所需要的空间。 内存泄露内存泄露是指程序在申请内存后,无法释放已申请的内存空间,一次内存泄露危害可以忽略,但是内存泄漏次数多了就会导致内存溢出。
CI/CD的概述
什么是CI/CDCI/CD 是一种通过在应用开发阶段引入自动化来频繁向客户交付应用的方法。CI/CD 的核心概念是持续集成、持续交付和持续部署。作为一种面向开发和运维团队的解决方案,CI/CD 主要针对在集成新代码时所引发的问题(亦称:“集成地狱”)。具体而言,CI/CD 可让持续自动化和持续监控贯穿于应用的整个生命周期(从集成和测试阶段,到交付和部署)。这些关联的事务通常被统称为“CI/CD
Redis的概述
什么是RedisRedis 是完全开源免费的,遵守 BSD 协议,是一个高性能的 key-value 数据库;是一个使用 C 语言开发的数据库,不过与传统数据库不同的是 Redis 的数据是存在内存中的,它是内存数据库,所以读写速度非常快,因此 Redis 被广泛应用于缓存方向;Redis 除了做缓存之外,也经常用来做分布式锁,甚至是消息队列;Redis 还支持事务 、持久化、Lua 脚本、多
开源协议的分类
BSD开源协议(Berkerley Software Distribution)BSD开源协议是一个自由的协议。使用者可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。但是要满足以下三个条件:1、如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的BSD协议。2、如果再发布的只是二进制类库/软件,则需要在类库/软件的文档和版权声明中包含原来代码中的BSD协议
JAVA设计模式
设计模式分类创建型:常用的有:单例模式、工厂模式(工厂方法和抽象工厂)、建造者模式。不常用的有:原型模式。结构型:常用的有:代理模式、桥接模式、装饰者模式、适配器模式。不常用的有:门面模式、组合模式、享元模式。行为型:常用的有:观察者模式、模板模式、策略模式、职责链模式、迭代器模式、状态模式。不常用的有:访问者模式、备忘录模式、命令模式、解释器模式、中介模式。 单例模式单例设计模式(Sing
Maven的安装
Maven 官网下载下载地址:https://maven.apache.org/download.cgi Maven安装包解压核心程序压缩包:解压到非中文、没有空格的目录。在解压目录中,我们需要着重关注 Maven 的核心配置文件:conf/settings.xml 本地仓库指定本地仓库默认值:用户家目录/.m2/repository。家目录一般在 C 盘,也就是系统盘。随着 Maven
日志服务
日志介绍日志文件是重要的系统信息文件,其中记录了许多重要的系统事件,包括用户的登录,系统的启动信息 ,系统的安全信息,邮件相关信,各种服务信息 。日志对于安全来说也特别重要,记录每天发生的各种事情。看是否受到攻击。日志是用来记录重大事件的工具。 常用日志目录/var/log是用来放日志的目录。/var/boot.log 系统启动日志/var/log/cron 记录与定时任务相关的文件。/va
Shell配置环境变量
环境变量配置1、设置环境变量:export 变量名=变量值 #申明变量env #查询变量unset 变量名 #删除变量2、环境变量配置文件:/etc/profile/etc/profile.d/*.sh~/.bash_profile~/.bashrc/etc/bashrc其中etc下的几个文件,针对所有用户生效,家目录下只对当前用户生效3、source命令:配置文件立即生效4、echo命令
Shell是什么
Shell是什么shell是操作系统的最外层,是一个用户操作系统之间交互的命令解释器。大多数Linux默认的shell命令解释器是bash。shell独立于内核,是链接内核和应用程序的桥梁,通俗来讲shell是内核周围的外壳。 什么是shell脚本shell脚本是shell命令组成的文件,可理解是实现shell功能的脚本。