数组 原理java 03
c语言双指针法--原地删除数组中的元素
27. 移除元素 - 力扣(LeetCode) int removeElement(int* nums, int numsSize, int val){ int left = 0; int right = 0; while (right < numsSize){ if (nums[right] != ......
ClassNotfoundException:java.net.InetAddress$CacheEntry
一个需求,需要修改本地的dns解析,去验证业务的正确性,修改本地的hosts文件需要频繁的修改本地磁盘文件。 使用工具包(https://github.com/tanhaichao/javahost)这个工具类实际是通过反射机制,去修改了InetAddress中的cache值,来实现dns解析的修改 ......
【Java】ElasticSearch 在项目里的应用
一、前言: 好久没写笔记了,最近忙一个项目,用到ES查询,以往的笔记写ES都是搭建环境,用Kibana玩一玩 这次是直接调用API操作了,话不多说,进入主题 二、环境前提: 公司用的还是纯ElasticSearch的API库,并没有Spring-Data-ES的包装 ElasticSearch版本是 ......
java各数组间相互转换
各数组间相互转换: int[] data = {1, 2, 3, 4, 5, 6, 7}; 1.int[] 转换 List<Integer>List<Integer> lists = Arrays.stream(data).boxed().collect(Collectors.toList());( ......
java动手动脑课后作业
第一个问题: 源代码: package homework;import java.util.Random;import java.util.Scanner;public class randomnum { public static void main(String[] args) { int[] ......
Java动手动脑
数学函数的掌握可以是计算更简单 public class TestMath{ public static void main(String[] args) { /* 下面是三角运算 */ //将弧度转换角度 System.out.println("Math.toDegrees(1.57):" + M ......
【转载】人人都能看懂的大模型原理(四)
四、 AIGC可控生成原理 本章我们将揭露AIGC的神秘面纱,解答AIGC和大模型的区别和关系。我们也将讨论open AI和其他大模型公司的关键区别点,为什么他们能够遥遥领先。本章试图从机器学习理论出发,对图像生成和文本生成建立统一的理论。本章诸多理论和观点均为作者原创,如有纰漏,请包含,也希望大家 ......
【转载】人人都能看懂的大模型原理(三)
三、 多头注意力算子和transformer 如前文所述,我们已经发现了自监督学习特性,也发明了对应的代理任务,接下来我们需要发明一种具体的算子能够实现这种代理任务。在介绍self-attention之前,我们先介绍一下传统CNN和RNN方案是怎么来的,他们的理论依据是什么。他们的优点和短板是什么。 ......
力扣刷题笔记-03
03 无重复字符的最长子串 我的思路 明确问题 怎么判断字符串是不是重复 答:hashset的contains,把字符放进集合里。 chatGPT 滑动窗口 定义两个指针,分别是left和right,用来指向不重复的子字符串。初始时候两个字符串都指向字符串的开头 用HashSet存储当前窗口里的元素 ......
(转)二叉树的存储方式【顺序储存(数组)、链式存储、邻接表存储等】
原文:https://blog.csdn.net/qq_21989927/article/details/108666433 1.顺序存储结构二叉树的顺序存储,就是用一组连续的存储单元存放二叉树中的结点。因此,必须把二叉树的所有结点安排成为一个恰当的序列,结点在这个序列中的相互位置能反映出结点之间的 ......
java全栈知识体系(上)
java全栈知识点汇总(上) 所有的总结都是基于此—>java全栈的目录结构定义,之后会加入更容易理解的解释或者实战例子,就像归纳,往后遇到的问题一会归纳到它该区的地方。 吉他地方经典的面试题也会加入进去归类。 1Java基础 1.1语法基础 面对对象编程 1.2泛型 1.3注解 1.4异常 1.5 ......
Java NIO 入门
1 NIO概述 1.1 定义 java.nio全称java non-blocking IO,是指JDK1.4 及以上版本里提供的新api(New IO) ,为所有的原始类型(boolean类型除外)提供缓存支持的数据容器,使用它可以提供非阻塞式的高伸缩性网络(来源于百度百科)。 1.2 为什么使用N ......
Java在指定日期上添加一月\一年
背景: 会员续费,按天,按月,按季度,按年份 实现: //获取当前日期 Date date = new Date(); //创建Calendar实例 Calendar cal = Calendar.getInstance(); cal.setTime(date); //设置当前时间 cal.add( ......
深入探讨Java面试中内存泄漏:如何识别、预防和解决
引言 在编写和维护Java应用程序时,内存泄漏是一个重要的问题,可能导致性能下降和不稳定性。本文将介绍内存泄漏的概念,为什么它在Java应用程序中如此重要,并明确本文的目标,即识别、预防和解决内存泄漏问题。 内存泄漏的概念 内存泄漏是指应用程序中分配的内存(通常是堆内存)在不再需要时未能正确释放。这 ......
防止数组下标越界的方法
防止数组下标越界的方法是:先判断指针的位置是否在界外,然后再取指针位置的元素 常常犯的错误是while(nums[j]==0&&j!=nums.size()) 一定要将判断是否是界外放在判断数组的元素前面while(j!=nums.size()&&nums[j]==0) 力扣下标越界会报如下错误 ......
docker部署java项目
1、首先你需要提前准备好jar包或者war包,并想办法放入Linux环境(或虚拟机)中; 2、java项目的部署需要用到Tomcat或者Jetty,docker可以直接拉取他俩的镜像,这里以Tomcat为例: # : 后面需要加上war或者jar对应的Tomcat版本,最好加上, # 否则默认最新的 ......
JAVA_OPTS
JAVA_OPTS ,顾名思义,是用来设置JVM相关运行参数的变量。 JVM:JAVA_OPTS="-server -Xms2048m -Xmx2048m -Xss512k" -server:一定要作为第一个参数,在多个CPU时性能佳 -Xms:初始Heap大小,使用的最小内存,cpu性能高时此值应 ......
JAVA中三种I/O框架——BIO、NIO、AIO
一、BIO(Blocking I/O) BIO,同步阻塞IO模型,应用程序发起系统调用后会一直等待数据的请求,直至内核从磁盘获取到数据并拷贝到用户空间; 在一般的场景中,多线程模型下的BIO是成本较低、收益较高的方式。但是,如果在高并发的场景下,过多的创建线程,会严重占据系统资源,降低系统对外界响应 ......
Tomcat的优化(分别为操作系统优化(内核参数优化),Tomcat配置文件参数优化,Java虚拟机(JVM)调优)
Tomcat的优化 一、Tomcat 优化 Tomcat 配置文件参数优化 二、系统内核优化 三、Tomcat 配置 JVM 参数: 参数含义一、Tomcat 优化Tomcat默认安装下的缺省配置并不适合生产环境,它可能会频繁出现假死现象需要重启,只有通过不断压测优化才能让它最高效率稳定的运行。优化 ......
docker-java连接虚拟机使用docker
1、前言 在学习鱼皮的Oj在线项目,在第六个视频需要把代码远程同步到虚拟机的docker上,但是鱼皮的虚拟机是ubuntu带有界面,我的虚拟机是centos不带界面。 所有我准备不把代码同步到虚拟机上,而是在本地修改,到时候打包上去,这里面临一个问题就是docker-java连接docker。 2、 ......
HBase13(项目03phoenix视图JDBC开发)
1.phoenix视图建立 当创建视图后,就可以使用SQL查询视图,和操作Table一样。 1.视图如何映射到HBase的表? 视图的名字必须是:命名空间.表名 2.视图中的列如何映射到HBase的列族和列? 列名必须是:列族.列名 3.视图中的类如何映射到HBase的ROWKEY? 指定某个列为p ......
基于Java+vue开发的企事业移动培训考试平台
随着移动互联网的快速发展,越来越多的企业开始关注移动培训和考试平台的开发。为了满足这一需求,我们可以使用Java和Vue来开发一个基于移动端的企事业培训考试平台。 获取方式Q+: 262086839 一、背景和需求 企事业移动培训考试平台是一个基于Web的应用程序,旨在提供一个方便、高效的移动学习平 ......
Java 21的StringBuilder和StringBuffer新增了一个repeat方法
发现Java 21的StringBuilder和StringBuffer中多了repeat方法: /** * @throws IllegalArgumentException {@inheritDoc} * * @since 21 */ @Override public StringBuilder ......
Day03 - Vue语法使用
JS循环方式 JS循环方式 // 方式一: js循环 >for() >基于索引的循环 let i = 0 for (; i < 10;) { console.log(i) i++ } let list = [1, 2, 3, 4, 5, 6, 7, 8] for (let j = 0; j < li ......
数组进阶
多维数组 二维数组 //基本构架 int a[][]=new int[2][5] //可以看成一个两行三列的数组 其中每一个元素都是一维数组 还是很好理解的 二维数组如果我们只用一维的输出方法输出,只能输出一个数组,但我们知道数组被输出的只有地址,我们必须输出数组中的一个值才能有结果,所以这样是不行 ......
MybatisPlus多数据源,详细配置及原理简单解析
MybatisPlus作为mybatis的增强工具,提供了配置多数据源的扩展,通过简单的3步配置,即可使用注解轻松切换数据源。 1. 引入坐标 <!-- dynamic-datasource多数据源坐标--><dependency> <groupId>com.baomidou</groupId> < ......
Java POI导入超时问题如何解决
前端导入Excel向后台发出请求时,后台立即返回信息“后台正在导入,请稍等!”,向redis中存入键isFinished的值为字符串“0”,并且开启一个线程来完成插入大量数据到数据库的工作,当插入完成则将redis中isFinished的值改为字符串“1”。前端收到“后台正在输入,请稍等!”后,此时 ......
Array 数组的几种方法
1.arr.keys() 返回数组的键名 2.arr.values() 返回数组的值 3.arr.entries() 返回数组的键和值 4.arr.reduce() 接受两个参数:一个是对数组每个元素执行的回调方法,一个是初始值 let sum = arr.reduce(function(prev, ......