数组 原理java 03

[省选联考 2023] 染色数组 题解

题目描述 给定一个长度为 $n$ 的正整数数组 $A$,其中每个数都在 $1$ 到 $m$ 之间,从左到右排成一排。现在要将每个数字染成红色或者绿色,我们定义一个染色方案为优秀的染色方案,当且仅当它满足: 每个数 $A_{i}$ 要么被染成红色,要么被染成绿色。 红色的数从左到右依次严格递增,绿色的 ......
题解 数组 2023

【Java 并发】【十】【JUC数据结构】【三】LinkedBlockingQueue阻塞队列原理

1 前言 这节我们就来看看LinkedBlockingQueue内部实现的原理。 2 LinkedBlockingQueue的使用 在看原理之前我们先来用一用LinkedBlockingQueue,来体验一下: 2.1 插入数据 public class LinkedBlockingQueueTes ......

数组的算法

数值型数组特征值统计 这里特征值涉及到:平均值,最大值,最小值,总和等 求最大值:将数组第一个元素假设为最大值 int max= arr[0];再然后用写一个判断语句如果数组第一个 元素小于当前比较的元素就把当前比较的元素赋值给max if(max<arr[i]){max = arr[i]} 求最小 ......
数组 算法

java基础-异常

1.简介 如果某个方法不能按照正常的途径完成任务,在这种情况下会抛出一个封装了错误信息的对象,此时这个方法会立刻退出同时不返回任何值,调用这个方法的其他代码也无法继续执行,异常处理机制会将代码执行交给异常处理器 自定义异常的话是继承一个异常类,通常是RumtimeException或者Excepti ......
基础 java

【Java 并发】【十】【JUC数据结构】【二】BlockingQueue阻塞队列原理

1 前言 这节我们就来看看BlockingQueue阻塞队列是什么都有哪些具体实现。 2 BlockingQueue阻塞队列是什么 BlockingQueue阻塞队列,它是一个提供阻塞功能的队列容器。首先它是一个队列容器,能够存储东西,提供数据入队功能,进行数据存入;提供数据取出功能,进行出队,如下 ......

技术--2021-12-《深度学习与图像识别原理及实践》-阿里达摩院

技术--2021-12-《深度学习与图像识别原理及实践》-阿里达摩院 创建时间:| 2021/12/12 9:48 | 更新时间:| 2021/12/20 17:29 作者:| HelloXF 第一章 机器视觉 在行业中的应用 机器视觉的发展背景 人工智能 机器视觉 传统的图像处理方法和深度学习效果 ......
深度 图像 原理 技术 2021

C语言初识数组

以以下代码为例:重点在于 定义数组容量 对数组的每个元素循环赋值 遍历数组 1 #include <stdio.h> 2 int main(){ 3 4 int num=0; 5 double sum=0; 6 int cnt=0; 7 scanf("%d",&num); 8 int number[ ......
数组 语言

java-信息安全(二十)国密算法 SM1,SM2,SM3,SM4

一、概述 国密即国家密码局认定的国产密码算法。主要有SM1,SM2,SM3,SM4。密钥长度和分组长度均为128位。目前主要使用公开的SM2、SM3、SM4三类算法,分别是非对称算法、哈希算法和对称算法。 SM1 为对称加密。其加密强度与AES相当。该算法不公开,调用该算法时,需要通过加密芯片的接口 ......
SM 算法 信息 java SM1

java基础-序列化和拷贝

1.序列化 1.1.定义 如果我们需要持久化Java对象,或者在⽹络传输Java对象,这些场景都需要⽤到序列化,简单来说序列化就是将数据结构或对象转换成⼆进制字节流的过程,反序列化就是将在序列化过程中所⽣成的⼆进制字节流转换成数据结构或者对象的过程 对于Java这种⾯向对象编程语⾔来说,我们序列化的 ......
序列 拷贝 基础 java

java基础-代理

1.代理简介 2.静态代理 3.动态代理 3.1.jdk 使用反射机制生成一个实现代理接口的匿名类,在调用具体方法前调用InvokeHandler来处理,JDK创建代理对象效率较高,但是执行效率较低 使用流程:实现InvocationHandler接口,重写invoke(),使用Proxy.newP ......
基础 java

Java生成PDF几种方式

## 1、itextPDF直接填充<!-- PDF工具类 --> <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.13</version> </dependency ......
方式 Java PDF

java基础-反射

1.反射定义 反射机制是指在运行状态中,对于任意一个类都能够知道这个类所有的属性和方法,并且对于任意一个对象,都能够调用它的任意一个方法,这种动态获取信息以及动态调用对象方法的功能称为Java反射机制 动态语言定义:动态语言是指程序在运行时可以改变其结构,新的函数可以引进,已有的函数可以被删除。比如 ......
基础 java

使用chatgpt(GPT-4)将过程式(的java代码)改成函数式(的elixir代码)

天啦噜太可怕了,之前我还嘲笑chatgpt不会小众语言来着。 chatgpt(GPT-4)把过程式(的java代码)改成了函数式(的elixir代码)。chatgpt(GPT-4)在接收2次prompt后,给出的Elixir代码可以不经修改直接AC。 如果你用的是GPT-3.5的版本,它甚至不知道e ......
代码 程式 函数 chatgpt elixir

剑指offer05(Java)-替换空格(简单)

题目: 请实现一个函数,把字符串 s 中的每个空格替换成"%20"。 示例 1: 输入:s = "We are happy."输出:"We%20are%20happy." 限制: 0 <= s 的长度 <= 10000 来源:力扣(LeetCode)链接:https://leetcode.cn/pr ......
空格 offer Java 05

java基础知识合集-io

1.IO简介 2.IO分类 2.1.流分类 按照流的流向分,可以分为输入流和输出流 按照操作单元划分,可以划分为字节流和字符流 按照流的角色划分为节点流和处理流 Java lO流共涉及40多个类,这些类看上去很杂乱,但实际上很有规则,而且彼此之间存在紧密的联系,Java lO流的40多个类都是从如下 ......
基础知识 基础 知识 java io

Java标准类

Java标准类 标准类的定义 类的代码 public class Person { /* 标准类: 1.所有成员变量都用private修饰 2.每个成员变量都有一个getter,setter方法 3.一个无参构造方法 4.一个全参构造方法 这样的标准类也叫Java Bean */ private S ......
标准 Java

java中操作redis

......
redis java

Java编程思想

......
思想 Java

java面向对象编程-三大特性

面向对象三大特性 封装 该露的露,该藏的藏 我们程序设计要追求“高内聚,低耦合”。高内聚就是类的内部数据操作细节自己完成,不允许外部干涉;低耦合:仅暴露少量的方法给外部使用。 封装(数据的隐藏) 通常,应禁止直接访问一个对象中数据的实际表示,而应通过数据接口来访问,这称为信息隐藏。 属性私有,get ......
特性 对象 三大 java

多维数组的使用(一)

多维数组概述 Java 语言里提供了支持多维数组的语法。 如果说可以把一维数组当成几何中的线性图形,那么二维数组就相当于是一个表格,像Excel中的表格、围棋棋盘一样。 应用举例1: 某公司2022年全年各个月份的销售额进行登记。按月份存储,可以使用一维数组。如下: int[] monthData ......
数组

2610. 转换二维数组

题目链接:2610. 转换二维数组 方法:哈希表 解题思路 统计$nums$中每个元素的数量,然后每行输出其中的$1$个,直到元素全部输出。 代码 class Solution { public: vector<vector<int>> findMatrix(vector<int>& nums) { ......
数组 2610

2607. 使子数组元素和相等

题目链接:2607. 使子数组元素和相等 方法:分组 + gcd + 中位数 解题思路 题意:将$arr$中某个元素$+1$或$-1$,使得任意长度为$k$的子数组的元素总和相等,且总操作数最少; 1、首先考虑数组$arr$为非循环数组: 任意$k$长的子数组总和相等,则有下述情形,依次可以将$ar ......
数组 元素 2607

2605. 从两个数字数组里生成最小数字

题目链接:2605. 从两个数字数组里生成最小数字 方法:哈希 解题思路 本题有两种情况: 两个数组有共同元素,则取其中最小值返回; 两个数组没有共同元素,则取两个数组中各自的最小元素组成最小的两位数返回。 代码 class Solution { public: int minNumber(vect ......
数字 数组 两个 2605

剑指 Offer 56 - I. 数组中数字出现的次数

题目链接:剑指 Offer 56 - I. 数组中数字出现的次数 方法:位运算 + 分类 解题思路 异或运算:当两个相同的数异或时,结果为$0$; 对于本题,假设答案为$res1$ 和 $res2$,那么对数组中所有的数求异或时,其结果实际等于 $res1$ ^ $res2$;并且此结果中二进制位为 ......
数组 次数 数字 Offer 56

剑指 Offer 56 - II. 数组中数字出现的次数 II

题目链接:剑指 Offer 56 - II. 数组中数字出现的次数 II 方法一:位运算 解题思路 由题意知,其他数值都出现了三次,那么其数值二进制位上的$1$也至少出现了三次,那么我们可以统计数值每一位上$1$的个数的总和,然后遍历每一位上$1$的数量,若某一位上的$1$的数量不能被$3$整除,说 ......
数组 次数 数字 Offer II

Java8新特性枚举&注解&lambda表达式

枚举 1.概述 枚举是指将变量的值一一列出来,而且变量的值只限于列举出来的值的范围内。比如:一周只有7天。 2.枚举的基础代码 package com.darksnow.enums; public enum Direction { FRONT, BEHIND, LEFT, RIGHT; } //上述 ......
注解 表达式 amp 特性 lambda

6357. 使数组元素全部相等的最少操作次数

题目链接:6357. 使数组元素全部相等的最少操作次数 方法:排序 + 前缀和 + 二分查找 解题思路 初始化$target = queries[i]$,根据题意,对于每次询问要将数组$nums$中的元素$=>target$,那么对于小于等于$target$的元素要加上一个数,而大于$target$ ......
数组 元素 次数 6357

java学习日记20230410-Collection

Collection接口实现类的特点: public interface Collection<E> extends Iterable<E> collection实现子类可以存放多个元素,每个元素可以是object 有些Collection的实现类,可以存放重复的元素,有些不可以 有些Collect ......
Collection 20230410 日记 java

1574. 删除最短的子数组使剩余数组有序

题目链接:1574. 删除最短的子数组使剩余数组有序 方法:双指针 + 找规律 解题思路 去除子数组的可能情况: 将第一个递减序列的左端点到末尾的子数组去掉; 将最后一个递减序列的右端点到起点的子数组去掉; 左端点:起点 和 第一个递减序列的左端点之间取, 右端点:最后一个递减序列的右端点和末尾之间 ......
数组 1574

剑指 Offer 42. 连续子数组的最大和

题目链接:剑指 Offer 42. 连续子数组的最大和 方法:动态规划 解题思路 参考动态规划详细解析——剑指 Offer 42. 连续子数组的最大和 注意: 很多同学首先会想到同向双指针,实际上本题由于$nums$数组的某一个元素的下一个元素可正可负,导致同向双指针要求的单调性无法满足; 使用$d ......
数组 Offer 42