算法 垃圾 常见java

java 第一次作业

1.定义圆形半径,求面积 package shg; import java.util.Scanner; public class Test { public static void main(String[] args) {// TODO Auto-generated method stubScan ......
第一次 java

字符串转为对应的java类

业务描述: 某个设备的配置信息使用字符串保存 { "isOpen": true, "startTime": "21:00:00", "endTime": "07:00:00", "seconds": 360, "exhalationOrSaver": 1, "screensaverPicture": ......
字符串 字符 java

Java之自定义注解的使用

要实现用户信息加密,我们可以新建一个EncryptCorpUser类。 package com.cmit.kapok.system.entity.corp_user; import com.cmit.kapok.system.utils.encrypt.anno.Encrypt; import co ......
注解 Java

Java入门_一维数组_第二题_随机生成数

前提 小白一个,啥都不会,欢迎指点。 题目 随机生成10个整数(1-100的范围),保存到数组,并倒序打印以及求平均值,求最大值和最大值的下标,并查找里面知否有8。 思路 随机生成-->采用random(),注意范围在( 1-100) 。 求取最大值下标插入索引 在再次建立一个索引,以此判断随机生成 ......
数组 Java

JAVA~适合新手和复习~基础三(集合所有常用方法)

Java 集合框架 1 Set和List的区别 2 1. Set 接口实例存储的是无序的,不重复的数据。List 接口实例存储的是有序的,可以重复的元素。 3 4 2. Set 检索效率低下,删除和插入效率高,插入和删除不会引起元素位置改变 <实现类有HashSet,TreeSet>。 5 6 3. ......
常用 新手 基础 方法 JAVA

雪花算法(SnowFlake)

简介 现在的服务基本是分布式、微服务形式的,而且大数据量也导致分库分表的产生,对于水平分表就需要保证表中 id 的全局唯一性。 对于 MySQL 而言,一个表中的主键 id 一般使用自增的方式,但是如果进行水平分表之后,多个表中会生成重复的 id 值。那么如何保证水平分表后的多张表中的 id 是全局 ......
算法 雪花 SnowFlake

「ACM 算法实践」[解题报告]麦田

分析 首先,前缀和的思路是很显然的。然后我们很容易想到暴力枚举矩形的左上角和右下角,然而 $\mathcal{O}(n^4)$ 的算法过不去,哪怕把最后一维用二分,倒数第二维加一点剪枝也还是会 T 两个点。 这时候应该考虑将多行/列压缩为一行/列,然后再使用双指针枚举列/行。详细来说就是将 $i$ ......
麦田 算法 报告 ACM

「ACM 算法实践」[解题报告]组队

分析 因为时间不多了,我一开始只考虑了 $a_i$ 互不相等的情况,没想到居然拿到了 60 昏( 正确解法是贪心 + 优先队列。~~而不是从「使得人数最少的队伍人数最多」中得到的二分~~ 首先肯定要将 a 数组排序,要使人数最少的队伍人数最多,我们优先将当前的数 $a[i]$ 放到以 $a[i]-1 ......
算法 报告 ACM

「ACM 算法实践」[解题报告]时间管理大师

分析 一开始想着应该要分情况讨论,如果每台电脑的耗电量都小于 $e$ ,那么可以知道小 Q 是可以一直学习下去的,如果存在电脑的耗电量大于等于 $e$ ,贪心的想法是将每台电脑能用的时间从小到大排序,然后丢进优先队列里,再考虑给谁充电,这样一来情况就非常复杂了。 正确的做法是二分答案 $t$ ,计算 ......
时间管理 算法 大师 时间 报告

keytool 错误: java.io.IOException: Invalid keystore format

keytool 错误: java.io.IOException: Invalid keystore format 出现原因:可能是jdk出现了问题,需要找到Android studio 查看jdk的位置在哪里。 解决办法: File-->Project Structure-->SDK Locatio ......
IOException keystore 错误 keytool Invalid

高精度算法-高精度加法

为什么要用高精度 因为有的题目的数据很大,超出long long的范围,所以我们需要用高精度来计算: 首先是高精度加法: 高精度加法就是仿照我们竖式加法进行操作,逐位相加,注意进位!!! 题目传送门 Tiling Time Limit: 1000MS Memory Limit: 65536K Tot ......
高精 高精度 加法 算法

redis stream 命令行客户端和java客户端使用

redis stream 是发布订阅机制的升级版本,或者说是 redis pub/sub 的升级版,是redis 5的新增特色,redis的 stream就是一个简单的消息队列。 redis 的发布订阅极度不可靠,它不支持持久化,不管是消费者下线,还是消息积压都会导致消息丢失 消息积压的默认处理方式 ......
客户端 客户 命令 stream redis

redis rejson 命令行客户端使用和java客户端使用

下载rejson插件 地址Releases · RedisJSON/RedisJSON (github.com) 1.04版本下面有直接编译号的,别的版本需要手动编译 下载以后吧文件放到 redis-6.0.9/module 目录下面 module 需要自己创建,放在别的地方也可以 需要修改权限: ......
客户端 客户 命令 rejson redis

蚁群算法及 TSP 问题上的应用

群智能(Swarm intelligence) 自然界动物群,称之为群。 群的特征: 相互作用的相邻个体的集合 个体的行为简单,既有竞争又有协作 智能化的集体行为(1+1>2): 个体间不仅能够交互信息,还能够处理信息,根据信息改变自身行为 没有一个集中控制中心,分布式、自组织 作为群体协同工作时, ......
算法 问题 TSP

代码随想录算法训练营Day50 动态规划

#代码随想录算法训练营 代码随想录算法训练营Day50 动态规划| 123.买卖股票的最佳时机III 188.买卖股票的最佳时机IV 123.买卖股票的最佳时机III 题目链接:123.买卖股票的最佳时机III 给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算 ......
随想录 训练营 随想 算法 代码

Linux服务器编写Shell脚本定时监控Java应用状态以及掉线后的自动重启

1. 编写Shell脚本 #! /bin/sh export JAVA_HOME=/root/jdk1.8.0_361 export CLASSPATH=.:CLASSPATH:$JAVA_HOME/lib/ export PATH=$PATH:$JAVA_HOME/bin proc_name=we ......
脚本 状态 服务器 Linux Shell

Java第一次作业

1. 定义圆形半径,求面积。 package mnb; import java.util.Scanner; public class b { public static void main(String[] args) { // TODO Auto-generated method stub Sca ......
第一次 Java

常见MimeType大全

使用C#获取MimeType列表 [HttpGet("ExportFile")] public IActionResult ExportFile() { string path = @"F:\DownLoad\新建文件夹\新建文本文档.txt"; string fileName = "新建文本文档. ......
MimeType 常见 大全

Java上下转型

上下转型是多态的体现 向上/下转型的首要条件是要有继承关系 ......
上下 Java

Geyser - Minecraft Server 基岩版与Java版互通教程

阅前须知 当要连接的Java版服务器的版本低于时,服务器需安装MOD 「ViaFabric」 当出现"Do you want to continue?[Y/n]"时,输入y,随后等待即可。 执行命令 apt-get upgrade 时,第一处的选择请参照第二条,其余的回车继续即可。 vim 使用方法 ......
基岩 Minecraft 教程 Geyser Server

JAVA - csk1

注意点: style 检擦是 rough的 看看如何submit ......
JAVA csk1 csk

java后台 apiV3 对接微信app支付

因为项目中需要用到微信支付,这里对自己对接的流程做一个记录一、接入前准备1.申请应用appId与商户号,配置apiV3秘钥2.生成商户证书首先登录微信商家平台,进入"账户中心–>账户设置–>API安全",申请API证书(此证书为商户证书,跟下文的微信平台支付证书不一样),下载安装方式见官方文档经过上 ......
后台 apiV3 java apiV app

java 微信支付v3 —7.微信支付之申请退款

正文 不得不说,申请退款和创建订单是非常相似的,流程都一样,只是请求的数据变了,那么我们第一步就是封装请求数据成对象形式,方便后续调用。 1. 申请退款请求对象 微信支付订单号,微信支付订单号和商家订单号二选一,这个是必不可少的,原订单金额也是必填的,微信会做二次验证。 @Data public c ......
java

java 微信支付v3 —8.微信支付之退款成功回调

正文 还记得WxPayCallbackUtil回调接口工具类吗,当时是用于支付成功的回调,我们接下来向里面添加一个退款成功的回调方法,在添加前我们先来做一个准备操作。 退款返回数据对象 @Data @Slf4j public class WxchatCallbackRefundData { /** ......
java

java 微信支付v3 —9.微信支付之商家转账API

正文 这个功能就比较复杂了,首先是得有90天的资金流水才能开通,其次开通后还需要在官网进行配置,不能直接调用,并且限制了IP地址。 如下图所示,首先需要进行产品设置,将里面都设置好后才能进行开发,只开通功能是远远不够的。 商家转账设置说明及避坑指南 页面发起:即登录微信支付后,手动输入用户信息,进行 ......
商家 java API

java 微信支付v3 —3.订单创建准备操作

正文微信支付的下单操作分为了5种,分别是JSAPI、APP、H5以及Native支付及小程序支付,之所以将支付放在单独一个章节,而不是按照支付类型划分一个章节,是因为支付所传递的数据都是相似的,方便我们更好的封装。本章节是支付编写支付前的准备操作,发送请求需要请求地址,用户支付成功后微信会通过我们传 ......
订单 java

java 微信支付v3 —5.微信支付成功回调

正文同样的通知可能会多次发送给商户系统。商户系统必须能够正确处理重复的通知。 推荐的做法是,当商户系统收到通知进行处理时,先检查对应业务数据的状态,并判断该通知是否已经处理。如果未处理,则再进行处理;如果已处理,则直接返回结果成功。在对业务数据进行状态检查和处理之前,要采用数据锁进行并发控制,以避免 ......
java

java 微信支付v3 —2.微信支付基本配置

正文 配置商户信息、证书、密钥等。将客户端对象构建到Bean中,方便后续使用。 我们可以使用官方提供的 SDK,帮助我们完成开发。实现了请求签名的生成和应答签名的验证。 <!-- 微信支付 --> <dependency> <groupId>com.github.wechatpay-apiv3</g ......
基本配置 java

java 微信支付v3 —4.创建订单的封装及使用

正文 经过了微信支付之创建订单准备操作的准备操作,接下来我们就能够非常快速的开发出各种支付类型的创建订单接口。 商户Native支付下单接口,微信后台系统返回链接参数code_url,商户后台系统将code_url值生成二维码图片,用户使用微信客户端扫码后发起支付,也就是说后端只需要返回code_u ......
订单 java

java 微信支付v3 —6.微信支付查询订单API

正文什么时候会用到这个API?常规情况下,回调接口已经足够我们使用,用户支付成功后,微信会自动调用我们的回调接口进行回调,那么还需要这个API吗?使用场景:微信服务器故障,我们的服务器故障,服务器端正在进行更新导致用户付款后端没有及时接收到微信的回调请求,那么此时我们就可以让用户点击按钮“更新支付状 ......
订单 java API