leetcode 0001 两数之和
给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。 你可以假设每种输入只会对应一个答案。但是,你不能重复利用这个数组中同样的元素。 示例: 1234给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1] 解题: 这道题目只能暴力破解,匹配两个数相加,然后得出索引 12345678910111213class Solution { public int[] twoSum(int[] nums, int target) { int len = nums.length; for (int i = 0; i < len; i++) { for (int j = i + 1; j < len; j++) { if (nums[i] + nums[j] == target) ...
PC微信助手
注入dll到微信0x0 首先要打开微信进程 12345678910111213141516wchar_t wxPath[] = L"C:\\Program Files (x86)\\Tencent\\WeChat\\WeChat.exe";STARTUPINFO si = { 0 };PROCESS_INFORMATION pi = { 0 };ZeroMemory(&si, sizeof(si));si.cb = sizeof(si);ZeroMemory(&pi, sizeof(pi));si.dwFlags = STARTF_USESHOWWINDOW;si.wShowWindow = SW_SHOW;// 打开进程BOOL bCp = CreateProcess(NULL, wxPath, NULL, NULL, FALSE, NULL, NULL, NULL, &si, &pi);if (bCp == 0){ MessageBox(NULL, L"启动微信失...
Seata 0.8.1~1.0.0客户端启动过程分析
Seata 0.8.1~1.0.0客户端启动过程分析1. 加载registry配置transactionServiceGroup默认为${spring.application.name}-fescar-service-group可以通过spring.cloud.alibaba.seata.txServiceGroup指定 核心类:io.seata.config.ConfigurationFactory static {} 初始化CURRENT_FILE_INSTANCE 加载registry(环境隔离) 先从System.getProperty读取seata.config.name的value{seataConfigName} 如果seataConfigName为null再从System.getenv获取SEATA_CONFIG_NAME的value{seataConfigName} 如果{seataConfigName}为null,则{seataConfigName}为默认值registry 先从System.getProperty读取seataEnv的value{...
深入理解JVM
类的加载,连接与初始化 加载:查找并加载类的二进制 连接 验证:确保被加载的类的正确性 准备:为类的静态变量分配内存,并将其初始化为默认值 解析:把类中的符号引用转为直接引用 初始化:为类的静态变量赋于正确的初始值 Java程序对类的使用方式可以分为两种 主动使用 被动使用 所有的Java虚拟机实现必须在每个类或接口被Java程序“首次主动使用”时才初始化它们 主动使用 创建类的实例 访问某个类或接口的静态变量,或者对该静态变量赋值‘ 调用类的静态方法 反射(如Class.forName(“com.test.Test”)) 初始化一个类的子类 Java虚拟机启动时被标明为启动类的类(如执行 java Test) JDK1.7开始提供的动态语言支持:java.lang.invoke.MethodHandle实例的解析结果REF_getStatic,REF_putStatic,REF_invokeStatic句柄对应的类没有初始化,则初始化 除了上述7种情形,其他使用Java类的方式都被看作被动使用,不会导致类的初始化。 类的加载类的加载指的是将类的....
List接口源码分析
了解基本数据结构在java中很是重要,今天在这里我们来常用的List接口,以及不同的实现。 ArrayList LinkedList Vector CopyOnWriteArrayList etc… 环境:JDK1.8 接口定义List接口定义分为:查询,修改,批量修改,比较和hash,位置访问,搜索,迭代,视图。 查询操作方法123456int size(); // 返回此列表元素数量boolean isEmpty(); // 返回此列表是否为空boolean contains(Object o); // 返回此列表是否包含o元素Iterator<E> iterator(); // 返回此列表迭代器Object[] toArray(); // 返回此列表转换后的数组<T> T[] toArray(T[] a); // 返回此列表转换后的数组范型 修改操作方法12boolean add(E e); // 添加元素到此列表中boolean remove(Object o); // 从此列表中移除指定元素 批量修改操作方法12345678boolean co...
nacos集群安装
nacos 1.0.0-RC 伪集群部署 准备机器 1目标主机IP 192.168.1.100 下载nacos 123mkdir -p /opt/softwarescd /opt/softwareswget https://github.com/alibaba/nacos/releases/download/1.0.0-RC2/nacos-server-1.0.0-RC2.tar.gz 解压缩 1tar -zxvf /opt/softwares/nacos-server-1.0.0-RC2.tar.gz -C /opt/ 准备MYSQL数据库 12创建数据库 nacos执行 nacos-mysql.sql 修改配置 12345678910111213141516171819cd /opt/nacosvim conf/application.properties1. 修改application配置server.port=8847db.num=1db.url.0=jdbc:mysql://192.168.1.100:3306/nacos?characterEncoding=u...
决策树
决策树 熵=-\sum_{i=1}^Np(i)log_2{p(i)} Gini系数=Gini(p)=\sum_{k=1}^kp_k(1-p_k)=1-\sum_{k=1}^kp_k^2熵越大,集合中的元素分类越多。 Gini系统与熵表达的意思一样。 Xgboost y_i=\sum_jw_jx_{ij} 回归算法 决策树与随机森林 贝叶斯算法 Xgboost 支持向量机 时间序列 神经网络 PCA降维 聚类算法 推荐系统 word2vec
servicecomb-saga omega分析
在微服务热火朝天的时代,分布式事务变的更加急迫,那么如果解决分布式事务是一个一直以来的难题,今天我们来介绍一个保证最终一致性的分布式事务的框架servicecomb-saga。 alpha安装 下载 1git clone https://github.com/apache/servicecomb-saga.git 编译 12345678如果使用mysql作为alpha的db,那么修改配置文件alpha/alpha-server/pom.xml在</dependencies>之前添加如下依赖<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId></dependency>mvn clean install -DskipTests -Pspring-boot-2 修改alpha配置文件 创建数据库 123456进入数据库命令行create database `saga` chars...
canal快速开始
服务端服务端ip:192.168.1.101 下载canal 到/opt/softwares 1wget https://github.com/alibaba/canal/releases/download/canal-1.0.26-preview-2/canal.deployer-1.0.26-SNAPSHOT.tar.gz 解压缩 1mkdir /opt/canal && tar -zxvf canal.deployer-1.0.26-SNAPSHOT.tar.gz -C /opt/canal/ 配置mysql 123456vim /etc/my.cnf[mysqld]log-bin=mysql-binbinlog-format=ROWserver_id=1 创建用户 1234CREATE USER canal IDENTIFIED BY 'canal';GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'canal'@'%...
记一次lombok的问题
一、案发现场此问题的案发现场是测试环境,为了减少不必要的类,我们这里用一个简单的例子进行模拟。 lombok version:1.16.14 jdk version:1.8 上代码:12345678910111213141516171819├─src│ ├─main│ │ ├─java│ │ │ └─org│ │ │ └─jsbxyyx│ │ │ └─util│ │ │ DozerUtil.java│ │ ││ │ └─resources│ └─test│ ├─java│ │ └─org│ │ └─jsbxyyx│ │ └─test│ │ A.java│ │ A1.java│ │ DozerTest.java│ ││ └─resources 1234567891011...