- 博客(247)
- 资源 (1)
- 收藏
- 关注
原创 java 动态链接
preview:运行时数据区中由虚拟机栈,栈内部有多个线程,每个线程的基本结构是栈帧,栈帧和方法是对应的。栈帧内部有:局部变量表 操作数栈 动态链接 方法返回地址 一些附加信息在方法区里面有一个运行常量池,包含变量和方法,class文件所有的变量和引用作为符号引用,保存在class文件的常量池中。描述一个方法调用了其他的方法的时候就是通过常量池中指向方法的符号引用来表示。那么动态连接的作用就是将这些符号引用转化成调用方法的直接引用所以动态链接:将对方法的符号引用 链接成 对调用方法
2021-07-19 10:48:44
2698
2
原创 ssm原始整合(springmvc+spring+mybatis+maven构建方式)
ssm原始整合(springmvc+spring+mybatis+maven构建方式)一、实现目标实现一个简易版用户账户信息添加查看的后台管理二、用到的技术点框架:springmvc+spring+mybatis 数据库:mysql 前端:原生jsp 项目构建:maven方式三、整合步骤构建maven框架 在pom文件中导入相关依赖,包括spring相关、springmvc相关、mybatis相关、必要的单元测试依赖junit、日志依赖log4j等 创建数据库ssm和表acc
2021-05-05 00:06:20
329
原创 java调用c语言实现的dll文件,以及dll文件位数不匹配的解决办法
项目结构解决办法:因为我的这个dll文件是自己生成的,所以只能重新生成一个64bit的dll
2021-04-07 18:28:55
515
原创 使用控制台对c语言文件生成动态链接库,缺少jni文件解决办法
如图解决办法gcc -I%java_home%\include -I%java_home%\include\win32 -shared -o hello.dll hello.c结果:参考文献:https://www.cnblogs.com/b3051/p/7484501.html
2021-04-07 16:13:53
167
原创 java文件使用javac 编译出现GBK字符映射错误问题
如图:解决办法:首先看一下java文件的编码格式 使用记事本打开java文件 选择另存为 底部默认的编码就是当前文件的编码格式 既然是UTF-8的类型,同时根据提示知道控制台的默认编码格式是GBK 所以在编译的时候当然会出现错误直接指定编译的时候使用utf8编码成功编译!...
2021-04-07 15:38:15
489
原创 jupyter切换pytorch_gpu内核
疑问:之前一直使用的tensorflow,使用jupyter切换python内核方法生成的内核时可以使用的 但是今天用同样的方法生成pytorch内核的时候,在jupyterlab里面却不能顺利的使用:import torch以下是解决方法:删除用之前方式添加的内核(CMD)查看内核安装的位置jupyter kernelspec list (CMD)jupyter kernelspec remove 你的内核名称安装nb_conda_kernels包,自动把虚拟环境下的python.
2021-01-31 00:59:13
1116
原创 Pycharm关联安装的conda环境
1.打开pycharm新建项目,如图所示要点是选择现有的conda虚拟环境2.查看当前项目的Interpreter如图所示
2021-01-30 14:56:31
857
原创 安装pytorch
1.添加清华源conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/ana
2021-01-30 14:10:50
159
1
原创 剑指Offer 06.反向输出链表中的元素
对于链表反向输出元素看起来非常简答,如果使用java编程的有以下几种思路思路一、遍历两次链表第一次遍历的时候计算链表的长度 根据链表的长度来定义数组 第二次遍历链表的时候按照数组的下标从后往前来放入数组中思路二、遍历一次链表,但是借助栈的数据结构遍历链表的时候使用栈来存储 将栈中的元素依次弹出思路三、直接修改链表的指针将正向的指针全部改成反向的,如图所示总结:简单看来就是将当前的节点的指针指向前一个节点。知道当前节点的下一个节点是空的时候当前节点就是最后一个节点,也就是反...
2021-01-20 20:21:08
259
原创 java实现剪刀石头布小游戏
私我源码人机对战 剪刀石头布主函数调用入口MainPro//主函数调用窗口public class MainPro { public static void main(String[] args) { MyFrame myFrame = new MyFrame(); }}创建图片JImageimport javax.swing.*;import java.util.Random;//创建图片public class JImage e..
2021-01-19 14:50:27
582
1
原创 图像处理一、使用OpenCV做简单的图像处理
一、常用的方法OpenCV的API链接 https://docs.opencv.org/3.0-beta/index.html图片读取 cv2.imread("Resources/test_img.jpg") 视窗显示 cv2.imshow("row_image",row_img) 显示延时 cv2.waitKey(0) 灰度化 cv2.cvtColor(row_img,cv2.COLOR_BGRA2GRAY) 边缘检测 cv2.Canny(r...
2020-12-10 23:02:41
411
原创 Microsoft SEAL安装笔记
最近focus在同态加密这个方向上,打算学习一下Microsoft SEAL首先是Microsoft SEAL库的安装1、官网:Microsoft SEAL: Fast and Easy-to-Use Homomorphic Encryption Library个人感觉不要下载最新的,我之前下载最新的库,发现在VS中打开的时候老师出现一些错误,后面我在youtube上看了他提供的安装教程 这里我把他下载下来,转存到B站上了 Installing Microsoft SEAL on Windo
2020-12-08 22:40:24
1897
4
原创 java 字符串方法总结
public class method_learn { public static void main(String[] args) { String s = "zhangsan"; String s1 = "sb"; //尾接 String s2 = s.concat(s1); System.out.println(s2); //比较 System.out.println(s.equ.
2020-12-06 12:33:57
132
原创 java 数组、字符串、对象 的内存图
数组的内存图数组在堆中,栈里面只存放变量对象内存图:成员变量不共用,但是成员方法是公用的字符串常量池:引用类型比较的是地址 字符串 在堆中存储的是字节数组,这点和字符数组不一样...
2020-12-06 12:19:22
373
原创 IDEA学习指南二 使用Maven创建javase、javaweb工程
环境:IDEA 2020.2.2 ultimate(旗舰版)1、创建Maven环境:先到Apache 官方网站去下载最新的MavenMaven – Download Apache Maven;然后解压到D盘根目录下配置环境变量: 配置Maven_Home的意义在于我们可以在任何cmd的路径下直接执行mvn xxx 命令 配置Path: 检查环境变量是否配置好: ...
2020-12-06 11:47:01
263
原创 leetcode 697.数组中的度 [熟练使用hashmap、Collections数据结构]
题目链接:https://leetcode-cn.com/problems/degree-of-an-array/目标:计算一个无须数组的度,并求出连续子集满足度不变的子集的最短长度算法描述:用三个hashmap,也就是三个key-value对,分别记录数组中每个元素出现的初始位置、结束位置、出现的次数 用collections.max来找出度 定义一个长度small_len初始化为数组长度,在遍历map中的key的过程中更新small_lenimport java.util.Co
2020-11-30 16:26:36
180
原创 Hashmap中的getOrDefault() 使用详解
jdk8API中是这样的:实现:import java.util.HashMap;import java.util.Iterator;import java.util.Map;public class MapTest { public static void main(String[] args) { Map<String,Integer> map1=new HashMap<>(); map1.put("tom",12);
2020-11-30 15:43:17
1186
原创 Collections.max()方法不返回String类型的实际大小
对于String类型的迭代器是按照字典序列排序的,要让Collections.max()方法返回实际的大小,需要添加比较器jdk8中对于Collections.max()方法有如下的说明:样例:import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;public class Collection { public static void main(String[]
2020-11-30 15:08:05
861
原创 leetcode 628. 数组中三个数的最大乘积
题目链接:https://leetcode-cn.com/problems/maximum-product-of-three-numbers/算法描述:三个数的最大乘积,只有两种可能,要么是最大的三个数,要么是最小的两个和最大的数的乘积方法一:先排序,然后比较大小,但是时间复杂度取决于排序的时间复杂度class Solution { public int maximumProduct(int[] nums) { int len = nums.length;
2020-11-29 21:47:26
138
原创 leetcode414 第三大的数 时间复杂度限制为O(n)
题目链接:https://leetcode-cn.com/problems/third-maximum-number/这道题的关键点就是要求算法的复杂度是O(n)可以知道如果先使用排序排好,遍历排序好的数组,找到第三大的数是不难的,但是这样的算法的复杂度一定是超过O(n)的那么既然是O(n)意味着我们只能遍历一次数组。观察samples可以知道 第三大的数和第一、第二大的数是 三个不同的数,故可以用三个数firstnumber、secondnumber、tihrdnumber来表示这三个
2020-11-29 21:07:48
384
原创 IDEA学习指南一 基础配置
环境:IDEA 2020.2.2 ultimate(旗舰版)1、IDEA简介:捷克的一家专门做各种IDE的一个公司2、IDEA的安装:直接把补丁拖入,然后输入激活码即可,可以自行百度3、IDEA的向导配置:启动界面的右下角的Configure中的设置是全局设置4、IDEA的基础设置:在File文件中的Setting中的设置是当前Project的局部设置5、安装插件:直接在Plugin中搜索install6、配置JVM的参数:可以按照自己电脑的配置自行修改7、DeBug的使
2020-11-28 23:12:37
227
原创 使用JQuery.js实现图片的随机抽奖
使用JQuery.js实现图片的随机抽奖最近发现一件很有趣的事情,一个班里面轮流来做任务,一般是按照学号来排的。但是我觉得我们如果是能够做出一个能够对于班里面随机抽奖的网页,那么是不是变得更加刺激呢?1、构思出如下的一个设计框图2、需求实现开始按钮:点击开始按钮能够达成小相框的图片快速随机展示 结束按钮:点击结束按钮能够暂停小相框中图片的随机展示,并且将得到的图片显示在右侧的大相框中3、具体思路使用循环定时器来循环显示图片。 为准备好的多张图片的路径添加到数组中,通过数组的
2020-11-27 16:22:42
1343
原创 leetcode剑指03 判断数组是否重复
题目链接:leetcodehttps://leetcode-cn.com/problems/shu-zu-zhong-zhong-fu-de-shu-zi-lcof/参考文章:HashSet https://www.cnblogs.com/LiaHon/p/11257805.html 第三种优化算法 https://www.cnblogs.com/le-le/p/12716640.html 时间复杂度是O(n)完整java代码:package 判断数组中的重复数字;...
2020-11-26 23:11:43
153
原创 eclipse关联java的源码
好久没有敲代码了,今天想敲一下leetcode里面一个数组的题,最简单的方法就是将数组排序,然后判断数组中有没有重复的数字但是我想看一下java源码中Arrays.sort()方法内部是如何实现的以便了解他的时间复杂度部分代码如下:关联源码之后是这样的情况如下:可惜我想找到之前没关联的截图,但是不知到怎么找,但是没有关系,我们看看是否可以换一个源码的包当然我们也可以直接按照上面这个方式添加源码。既然是要关联源码,那么顾名思义,源码这个东西,必然是在jdk(java开发工具
2020-11-26 21:36:25
353
原创 python图像灰度化、二值化
以下代码均在jupyter-lab中完成 python3.8例如:如下的图片1、灰度化## 自动补齐代码%config IPComplter.greedy=True## 获取图片&显示图片from PIL import Imageimport matplotlib.pyplot as pltimport numpy as np#获取图片def getimg(): return Image.open("pictures/学习资料.jpg") #显示图片de
2020-11-26 17:59:36
5947
原创 Paillier同态加密的原理以及Java实现
原理部分:https://blog.youkuaiyun.com/sliubala/article/details/105990883实现部分:https://blog.youkuaiyun.com/watch_ch/article/details/51153510//** * This program is free software: you can redistribute it and/or modify it * under the terms of the GNU General Public
2020-11-17 20:53:59
2438
原创 model过拟合,使用callback函数根据loss值来提前终止训练
以下代码均在jupyterlab里面实现# 添加注释%config IPComplter.greedy=True# 导入库import osimport numpy as np# 读写gzip文件的时候需要使用到gzip模块import gzip# 导入本地数据集def load_data(data_floder): ## 获取文件的路径 filesname = ['train-labels-idx1-ubyte.gz' , 'train-images-idx3-uby
2020-11-15 20:43:23
1803
原创 jupyter切换python内核
环境:我在conda 环境中新建了虚拟环境 evn1,这个里面有tensorflow-gpu版本的。目标:将jupyter的Kernel切换成conda中的evn1我们有两种方式查看我们的jupyter当前使用的Kernel方法1:Kernel-ChangeKernel方法2:直接在我们的jupyter里面导入sys模块,并且执行sys.executable,查看当前使用的python内核如果说我们只有一个默认的python的Ker的话,那说明,我们evn1的内核还没有安装,此时
2020-11-15 20:14:59
3501
原创 使用tensorflow实现对fashion mnist本地数据集的建模、训练、预测
## 1.添加提示%config IPComplter.greedy=True## 2.加载Fashion MNIST数据集from tensorflow import keras# fashion_mnist = keras.datasets.fashion_mnist# (train_images, train_labels),(test_images, test_labels) = fashion_mnist.load_data()## 加载本地import numpy as np.
2020-11-12 10:39:35
543
2
原创 pat 乙级 1008数组循环右移
题目链接https://pintia.cn/problem-sets/994805260223102976/problems/994805316250615808数组循环右移算法:对数组进行三次倒换如下:对N个数全部倒换 对前M个倒换 对后N-M倒换输入:6 21 2 3 4 5 6输出:5 6 1 2 3 4代码:#include <iostream>//倒换的方法 reverse(begin(a),begin(a+n)) 可以实现数组或者向
2020-10-21 00:12:00
128
原创 pat 乙级 1005 3n+1猜想
题目链接https://pintia.cn/problem-sets/994805260223102976/problems/994805320306507776输入:63 5 6 7 8 11输出:7 6思路:1、用数组arr下标来标记输入的数字,如果这个数字是重复验证过的 ,那么就将其数组的值修改为1作为记号2、使用向量vector来表示输入的每个值,利用向量可以定位到数据的地址 i 0 1
2020-10-19 23:39:41
117
原创 python递归实现汉诺塔
汉诺塔hanio(n,a,b,c):用三个棒子分别用变量a,b,c来表示示意图1、终止条件n==1: 此时hanio(1,a,b,c);直接将a上面的盘子放到c盘子上2、一般情况n!=1: 此时先将n-1个盘子,通过c棒子移动到b棒子上面,然后输出:接将a棒子上剩下的最后一个盘子移动到c棒子上 然后b棒子上边有n-1个盘子,此时要把其中n-2个盘子经过c棒子移动到a棒子上,然后输出:将b盘子上边的唯一一个盘子移动到c棒子上边#汉诺塔def hanio(n,a,b,...
2020-09-15 22:18:04
2928
1
原创 mybatis:mysql8.0配置db.properties常见错误
今天发现用外部文件db.properties引入数据库连接信息发生错误,最后发现是字符的问题由于之前是直接写在sqlMapConfig.xml文件中的。<property name="url" value="jdbc:mysql://localhost:3306/mybatis?useSSL=false&serverTimezone=UTC" />其中因为是在xml文件中写的,所以用 &来代替 & 现在要把数据库链接池的信息写在配置文..
2020-07-25 18:24:41
1361
2
原创 openssl命令行进行RSA加密解密
实现了在Window控制台使用openssl工具生成rsa私钥和公钥然后用公钥对于hello.txt文件加密得到enhello.txt文件最后用私钥对于enhello.txt文件解密得到outhello.txt文件控制台命令如下:OpenSSL> genrsa -out rsa_private_key.pem 1024Generating RSA private key, 1024 bit long modulus.......+++++.+++++e is 65537 (0
2020-07-21 22:08:44
2656
1
原创 计算 扩展欧几里得算法 求1024位大整数a和b的系数x,y 执行时间
要点: 大整数a、b均匀分布在0-2^1024次方内 使用扩展欧几里得算法实现求a和b的最大公因子的同时求解ax+by =gcd(a,b)的系数x和y 同时观察一下该递归算法的运行时间 直接上代码:import java.math.BigInteger;import java.util.Random;public class EEA { //扩展欧几里得算法求x、y static BigInteger x; static BigInteger y; ...
2020-07-21 16:43:44
526
原创 指数模运算-java递归实现
目标输入 整数 x,y,n;x>0,y>=0,n>1;输出 x^y(mod n)。用到的模运算的定理(x*y)(mod n) = [x(mod n)*(y(mod n))](mod n) a+b(mod n) = b+a(mod n) a*b(mod n) = b*a(mod n) a+(b+c)(mod n) = (a+b)+c(mod n) a*(b*c)(mod n) = (a*b)*c(mod n)java实现package xymodn;im..
2020-07-10 10:15:42
1019
1
原创 欧几里得算法和扩展欧几里得算法-java递归实现
定义 已知整数a,b,扩展欧几里得算法可以在求得a、b的最大公约数的同时,能找到整数x、y,满足ax + by = gcd(a,b)分析设 a>b。(1)显然当 b=0,gcd(a,b)= a。此时 x=1,y=0;(2)a>b>0 时设 ax1+ by1= gcd(a,b);bx2+ (a mod b)y2= gcd(b,a mod b);...
2020-07-09 15:13:58
1414
1
原创 SpringMVC 非注解和注解的处理器映射器和适配器 day4
本节讨论非注解开发和注解开发的不同1.1非注解的处理器映射器处理器映射器:org.springframework.web.servlet.handler.BeanNameUrlHandlerMapping另一个映射器:org.springframework.web.servlet.handler.SimpleUrlHandlerMapping 一个是根据Bean的name作为url进行查找对应的handler,我们在配置handler的bean对象的时候还要加上name属性来以备ha.
2020-07-08 18:57:09
339
原创 SpringMVC 加载的配置文件中各个组件的含义和配置的顺序 day3
这里的顺序是不是按照实际运行流程走的第一步:配置HandlerAdapter<!-- 处理器适配器 所有处理器适配器都实现 HandlerAdapter接口 --><bean class="org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter" />这里的class类实现了HandlerAdapter接口,这个接口里面能够处理的bean对象是实现Controller接口的Handler
2020-07-08 16:53:20
582
springmvc入门helloworld
2020-06-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人