算法 源码 编码java
Java 实现 二叉树的 前序遍历
Java 实现 二叉树的 前序遍历 class Node { int val; Node left; Node right; Node(int val) { this.val = val; } } public class BinaryTree { public void preorderTrave ......
Java 实现 FIFO 缓存算法
Java 实现 FIFO 缓存算法 一、什么是 FIFO FIFO(First In, First Out)是一种常见的数据结构,也叫做先进先出队列。它的特点是先进入队列的数据最先出队。 类似于现实中排队买东西的场景,先来的人先排队,先买完商品的人先离开。 在计算机领域,FIFO常用于缓存管理、进程 ......
Prophet 时间序列预测算法
Prophet 时间序列预测算法 一、背景 时间序列预测是一种预测未来数据的方法,对于时间序列的分析,我们可以采用传统的统计学方法,例如 ARIMA、Exponential Smoothing等,这些方法通过分析过去的数据建立模型来预测未来的趋势,但是这些方法有一个限制就是必须满足某些假设条件,例如 ......
Java 实现 LRU 缓存算法
Java 实现 LRU 缓存算法 一、什么是 LRU LRU(Least Recently Used,最近最少使用)是一种缓存算法,其核心思想是将最近最少使用的缓存项移除,以便为更常用的缓存项腾出空间。 在实际应用中,LRU 算法被广泛用于缓存和页面置换。 二、Java 实现 LRU 缓存算法 在 ......
Java 语言实现 IPv6 是否ping通
Java 语言实现 IPv6 是否ping通 1、导入相关的 Java 网络库 import java.net.InetAddress; import java.net.UnknownHostException; 2、定义 ping 方法,传入目标 IPv6 地址 public static boo ......
Java触发Metaspace的OOMError
package comg.yang.httpstest; import jdk.internal.org.objectweb.asm.ClassWriter; import jdk.internal.org.objectweb.asm.Opcodes; /** * @description: * @ ......
java相关
1. java.exe是执行控制台程序,javaw.exe是执行窗口程序, javac.exe是编译程序 2. java test.helloworld 执行这个类中的main 3. java -cp xxx.jar test.helloworld 参数cp表示自动找jar中的main。 4. ec ......
Java读取数据库表
Java读取数据库表 package com.easycrud.builder; import com.easycrud.utils.PropertiesUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import ja ......
java基础-原码、反码、补码
原码:十进制数据的二进制表现形式,最左边是符号位,0为正,1为负。 例如,56,它的原码是00111000 反码:正数的补码反码是其本身,负数的反码在原码的基础上,符号位不变,数值取反,0变1,1变0。 补码:正数的补码反码是其本身,负数的补码是在其反码的基础上+1。 计算机中的存储和计算都是以补码 ......
java基础-流程控制语句,顺序结构、分支结构、循环结构
一、循序结构 顺序结构语句是java程序默认的执行流程,按照代码的先后顺序,从上到下依次执行。 二、分支结构-if、switch 1、if的三种语法结构 //1 if(关系表达式){ 表达体内容; } //2 if(关系表达式1){ 表达体内容; }else if(关系表达式2){ 表达体内容; } ......
Protobuf编码规则
支持类型 该表显示了在 .proto 文件中指定的类型,以及自动生成的类中的相应类型: | .proto Type | Notes | C++ Type | Java/Kotlin Type[1] Java/Kotlin 类型 [1] | Python Type[3] | Go Type | Rub ......
java基于springboot+vue前后端分离的超市进销存系统管理系统、超市管理系统,附源码+数据库+文档+PPT
1、项目介绍 超市进销存系统,通过这个系统能够满足超市进销存系统的管理及员工的超市进销存管理功能。系统的主要功能包括:首页、个人中心、员工管理、客户管理、供应商管理、承运商管理、仓库信息管理、商品类别管理、 商品信息管理、采购信息管理、入库信息管理、出库信息管理、销售订单管理、部门管理、岗位管理等功 ......
Java代码读取properties配置文件
读取properties配置文件 package com.easycrud.utils; import java.io.IOException; import java.io.InputStream; import java.util.Iterator; import java.util.Map; ......
【算法】哈希算法
1 前言 本节我们来看我们常用的哈希算法哈。 2 为什么要有哈希 假设我们要设计一个系统来存储将员工手机号作为主键的员工记录,并希望高效地执行以下操作: 插入电话号码和相应的信息。(插入) 搜索电话号码并获取信息。(查找) 删除电话号码及相关信息。(删除) 我们可以考虑使用以下数据结构来维护不同电话 ......
java操作Set集合
java操作Set集合 import java.util.HashSet; import java.util.Set; public class SetExample { public static void main(String[] args) { // 创建一个HashSet对象 Set<St ......
【算法】页面替换算法
1 前言 功能:当缺页中断发生,需要调入新的页面而内存已满时,选择内存当中哪个物理页面被置换。 目标:尽可能地减少页面的换进换出次数(即缺页中断的次数)。具体来说,把未来不再使用的或短期内较少使用的页面换出,通常只能在局部原理指导下依据过去的统计数据来进行预测。 2 最优页面替换算法 基本思路:当一 ......
从分布式共识算法到区块链共识机制
英文原文链接:https://medium.com/datadriveninvestor/from-distributed-consensus-algorithms-to-the-blockchain-consensus-mechanism-75ee036abb65 From Distributed ......
浅聊Java核心技术之高可扩展利器SPI
SPI的概念 JAVA SPI = 基于接口的编程+策略模式+配置文件 的动态加载机制 SPI的使用场景 Java是一种面向对象语言,虽然Java8开始支持函数式编程和Stream,但是总体来说,还是面向对象的语言。在使用Java进行面向对象开发时,一般会推荐使用基于接口的编程,程序的模块与模块之前 ......
JAVA中的内存分配
JAVA中的内存分配 栈:方法运行时使用的内存,比如main方法的运行,进入方法栈中执行 堆:存储对象或数组,new来创建的,都存储在堆内存中 方法区:存储可以运行的class文件 本地方法栈:JVM在使用操作系统功能的时候使用,和我们开发无关 寄存器:给CPU使用 总结: 只要是new出来的一定在 ......
Java的对象包装器 & 自动装箱
有时,需要将 int 这样的基本类型转换为对象。所有的基本类型都有一个与之对应的类。例如,Integer 类对应基本类型 int。通常,这些类被称为包装器(wrapper)。这些对象包装器类拥有很明显的名字:Integer、Long、Float、Double、Short、Byte、Character ......
Mapreduce二次排序时,将jar包上传至Hadoop上运行时,抛出异常"java.util.NoSuchElementException"
查询原因后发现是java中实现实现Mapper时StringTokenizer 类时使用了一个方法nextToken()会抛出这个异常, ”我们可以使用 hasMoreTokens() 和 hasMoreElements() 方法来避免异常。如果标记器的字符串中有更多标记可用,则这两种方法都返回 t ......
Stoer-Wagner 算法
刚才可能是有用算法。这次是无用算法。 无向图的最小割是最小的边集使得割掉后不连通。Stoer-Wagner 算法可以在 $O(n^3)$ 复杂度内解决无向图最小割。或者说实际上是 $O(nm\log m)$。 首先有一句废话:对于任意两点 $s,t$ ,割掉最小割后,或者处于一个连通块,或者处于不同 ......
java 类继承关系
获取继承关系 java中没有多继承, 故一个类最多只有一个父类, 但可实现多个接口. 利用反射可获取类的信息(属性, 方法, 继承关系) 获取类自身 Class cz1 = String.class; Class cz2 = "abc".getClass(); Class cz3; try { cz ......
Java cmd下编译乱码问题解决办法
1、报错样式 2、解决办法 1)指定字符集,如下 2)修改编码格式 通过“记事本”打开 —》另存为 3)修改环境变量 此电脑——》属性——》高级系统设置——》环境变量——》(系统环境变量)新建 ——》“JAVA_TOOL_OPTIONS” “-Dfile.encoding=UTF-8” 如下图: — ......
Java面向对象
Java面向对象:封装,继承,多态(对像上转型),抽象 每一个对象都有两个特征:属性(成员变量),行为(成员方法) 继承:被继承的类叫父类,反之为子类(关键字: extends) class 子类 extends 父类 (注: Java语言只支持单重继承) { ……} 如果父类和子类中都定义了初始化 ......
7、Java内置工具类
Java内置工具类 1.字符串类 1.String类 String类不能被修改 其被修改的本质是申请新的内存空间,所以其每一次更改都会new新的对象 适用于需要量小不怎么修改的字符串时 2.StringBuffer和StringBuilder StringBuffer是多线程安全的类,适用于多线程。 ......
理解 Java8 的时间API(二)时间
理解 Java8 的时间API:java.time 上一篇介绍了 Java8 里新的时区API。这一篇介绍新的时间API:LocalDateTime,LocalDate,LocalTime类。 三、Java8中的时间 最常用的应该是java.time.LocalDateTime,java.time. ......
Java 网络编程 —— ServerSocket 详解
构造 ServerSocket ServerSocket 的构造方法有以下几种重载形式 ServerSocket() throws IOException ServerSocket(int port) throws IOException ServerSocket(int port, int bac ......
06 ETH-挖矿算法
《区块链技术与应用》课程链接:https://www.bilibili.com/video/BV1Vt411X7JF/?spm_id_from=333.337.search-card.all.click 06 ETH-挖矿算法 挖矿是保障区块链安全的一个重要手段。 Blockchain is sec ......
java反转部分链表后记
由于链表只是一个单向链表 所以不能在一次循环之内就直接进行反转操作 又因为只需要反转部分链表 所以只要将链表遍历到需要反转的最后一位,剩下的不用管了 于是我想到了在第一遍循环中用HashMap获取需要反转的链表的部分,键代表下标,值代表原先链表中val 之后第二遍遍历时按照将值按照反向数据即可 Ti ......