自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Janik的博客

共同学习,共同进步

  • 博客(64)
  • 收藏
  • 关注

原创 go实现文件的新建写入

使用go语言实现文件的新建与内容的写入

2023-02-02 17:50:40 270 1

原创 代码覆盖率 jaCoCo

2022-03-07 09:07:17 169

原创 maven学习总结

maven标签总结<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/maven-v4_0_0.xsd"> <!--父项目的坐标。如果项目中没有规定某个元素的值,那

2022-01-24 11:34:33 208

原创 后端开发常见面试题目

Java编程基础为什么重写 equals 还要重写 hashcode?== 和 equals 比较的区别?为啥有时会出现 4.0 - 3.6 = 0.40000001 这种现象?final 关键字的作用介绍 Java 的集合类ArrayList 和 LinkedList 的区别Java8java 8 有哪些新特性?HashMap 在 jdk 1.7 和 1.8 的区别?算法与数据结构

2021-12-29 08:00:04 3611

原创 MySQL基础知识总结

SQL语言分类DML(Data Manipulation Language):数据操纵语句,用于添加、删除、修改、查询数据库记录,并检查数据完整性INSERT:添加数据到数据库中UPDATE:修改数据库中的数据DELETE:删除数据库中的数据SELECT:选择(查询)数据 (SELECT是SQL语言的基础,最为重要。)DDL(Data Definition Language):数据定义语句,用于库和表的创建、修改、删除。CREATE TABLE:创建数据库表ALTER TABLE:

2021-11-30 20:43:31 402

原创 java8中的新特性

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录一、Lambda表达式1.介绍2.使用语法3.使用举例二、函数式(Functional)接口1.介绍2.如何理解函数式接口3.函数式接口使用举例三、方法引用与构造器引用四、Stream API五、Optional类总结一、Lambda表达式1.介绍Lambda 是一个匿名函数,我们可以把 Lambda 表达式理解为是一段可以传递的代码(将代码像数据一样进行传递)。使用它可以写出更简洁、更灵活的代码。作为一种更紧凑的代码风格,

2021-11-29 19:59:20 123

原创 Java反射机制

Java反射机制概述Reflection概念Reflection(反射)是被视为动态语言的关键,反射机制允许程序在执行期借助于Reflection API取得任何类的内部信息,并能直接操作任意对象的内部属性及方法。加载完类之后,在堆内存的方法区中就产生了一个Class类型的对象(一个类只有一个Class对象),这个对象就包含了完整的类的结构信息。我们可以通过这个对象看到类的结构。这个对象就像一面镜子,透过这个镜子看到类的结构,所以,我们形象的称之为:反射。动态语言 和 静态语言动态语言是一

2021-11-29 19:15:09 336

转载 2-3树的讲解

视频讲解:https://www.bilibili.com/video/BV1Ft411K7uJ?from=search&seid=11639360941243586154&spm_id_from=333.337.0.0博客讲解:https://www.yycoding.xyz/post/2014/3/25/introduce-2-3-search-tree

2021-11-22 21:51:49 107

原创 计算机网络----网络通信协议TCP&UDP

TCP和UDPTCPTCP协议全称是传输控制协议是一种面向连接的、可靠的、基于字节流的传输层通信协议,由 IETF 的RFC 793定义。TCP 是面向连接的、可靠的流协议。流就是指不间断的数据结构,你可以把它想象成排水管中的水流。三次握手第一次握手:客户端向服务端发送连接请求报文段。该报文段中包含自身的数据通讯初始序号。请求发送后,客户端便进入 SYN-SENT 状态。第二次握手:服务端收到连接请求报文段后,如果同意连接,则会发送一个应答,该应答中也会包含自身的数据通讯初始序号,发送完

2021-11-22 21:01:31 3021

原创 Java中的泛型机制

泛型的概念所谓泛型,就是允许在定义类、接口时通过一个标识表示类中某个属性的类型或者是某个方法的返回值及参数类型。这个类型参数将在使用时(例如,继承或实现这个接口,用这个类型声明变量、创建对象时)确定(即传入实际的类型参数,也称为类型实参)。//在集合中使用泛型ArrayList<Integer> list = new ArrayList<>();//类型推断list.add(78);list.add(88);list.add(77);list.add(66);//遍历

2021-11-22 15:59:02 550

原创 java中的注解(Annotation)

注解 (Annotation) 概述(1) Annotation 其实就是代码里的特殊标记, 这些标记可以在编译, 类加载, 运行时被读取, 并执行相应的处理。通过使用 Annotation, 程序员可以在不改变原有逻辑的情况下, 在源文件中嵌入一些补充信息。代码分析工具、开发工具和部署工具可以通过这些补充信息进行验证或者进行部署。(2)Annotation 可以像修饰符一样被使用, 可用于修饰包,类, 构造器, 方 法, 成员变量, 参数, 局部变量的声明, 这些信息被保存在 Annotation..

2021-11-22 09:14:29 238

原创 java中的集合

java集合概述Java 集合可分为 Collection 和 Map 两种体系Collection接口:单列数据,定义了存取一组对象的方法的集合List:元素有序(指的是存储时,与存放顺序保持一致)、可重复的集合Set:元素无序、不可重复的集合Map接口:双列数据,保存具有映射关系“key-value对”的集合ArrayList和LinkedList的异同?答:二者都线程不安全,相对线程安全的Vector,执行效率高。此外,ArrayList是实现了基于动态数组的数据结构,Li

2021-11-21 14:33:41 24267 6

原创 java中的枚举类

枚举类的使用枚举的使用场景:类的对象只有有限个,确定的(即一组常量),举例如下:星期:Monday(星期一)、…、Sunday(星期天)性别:Man(男)、Woman(女)季节:Spring(春节)…Winter(冬天)支付方式:Cash(现金)、WeChatPay(微信)、Alipay(支付宝)、BankCard(银行卡)、CreditCard(信用卡)就职状态:Busy、Free、Vocation、Dimission订单状态:Nonpayment(未付款)、Paid(已付款)、Deliv

2021-11-19 16:50:11 527

原创 java 实现输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。

import java.util.Arrays;class ListNode { int val; ListNode next; ListNode(int x) { val = x; }}/** * @class_name: ReverseLinklist * @description: 链表操作 * @author: ljk * @create: 2021-11-18 19:58 **/public class ReverseLin

2021-11-18 20:49:25 758

原创 java实现字符串二进制的加法

public class BinaryAdd { /** * @param a 第一个要加的二进制字符串 * @param b 第二个要加的二进制字符串 * @return */ // String:不可变字符序列(操作少量的数据用 String) // StringBuilder:可变字符序列、效率高、线程不安全(单线程操作字符串缓冲区下操作大量数据 StringBuilder) // StringBuffer:可变字符序列、效率低、

2021-11-18 19:07:50 817

原创 c++实现存在min函数的栈

leetcode解题链接普通栈的 push() 和 pop() 函数的复杂度为 O(1);而获取栈最小值 min() 函数需要遍历整个栈,复杂度为O(N) 。现在要实现获取栈最小值 min() 函数,并使其复杂度为O(1)。#include<iostream>#include<stack>using namespace std;//实现一个能够得到栈的最小元素的 min 函数在该栈中,调用 min、push 及 pop 的时间复杂度都是 O(1)。//使用一个辅助栈来

2021-11-17 19:48:58 456

原创 c++ 两个栈实现一个队列

#include <iostream>#include<stack>//栈using namespace std;class CQueue{ stack<int> stack1,stack2;public: CQueue(){} void append(int value){ stack1.push(value); } int del(){ int value; //如果st

2021-11-17 18:18:07 1034

原创 python进行文件的夹的新建

python进行文件夹的新建判断当文件夹不存在的时候#当文件夹不存在的时候 进行文件夹的新建(多级目录)if not os.path.exists('/a/b/c/'): #迭代创建多级目录 os.makedirs(train_dir)#当文件夹不存在的时候 进行文件夹的新建(单级目录)if not os.path.exists('/a/'): #迭代创建多级目录 os.mkdir(train_dir)...

2021-11-05 10:09:19 242

原创 python中常见的对文件的复制、移动和删除

import osimport shutil# 文件的复制(方法的第一个参数是源,第二个参数为目标路径)将aaa.png进行复制并重命名为bbb.pngshutil.copy('D:\\dir1\\aaa.png', 'D:\\dir2\\bbb.png')# 文件的移动(方法的第一个参数是源,第二个参数为目标路径)将aaa.png进行移动并重命名为bbb.pngshutil.move('D:\\dir1\\aaa.png', 'D:\\dir2\\bbb.png')# 删除aaa.pngo

2021-11-05 09:56:42 389

原创 python将mask翻转(黑变白,白变黑)

在图像处理中,有些数据集给出的标签与我们需要使用的标签是不同的,有时候是黑白颠倒的,这时候我们需要将其进行黑白颠倒。下面的代码将对aaa.png进行黑白颜色的颠倒,并保存为bbb.pngimg = Image.open('D:\\dir1\\aaa.png') # 打开图片matrix = 255 - np.asarray(img) # 图像转矩阵 并反色new_img = Image.fromarray(matrix) # 矩阵转图像new_img.save('D:\\dir1\\bbb.p

2021-11-05 09:32:27 5833 9

原创 python使用Image对图片进行resize并保存

在进行图像处理的时候,对图像的resize操作是比较常见的。以下代码会将source_imgs_dir目录下的图像都resize为256*256,然后转存到target_imgs_dir目录中。如果需要调整为其他的图像尺度,在代码中指定相应的尺度即可。import osfrom PIL import Imagesource_imgs_dir='~/home/source/'target_imgs_dir='~/home/target/'for file in os.listdir(source_

2021-11-05 09:05:24 11871 1

原创 ubuntu循环登录问题的解决

最近在ubuntu系统安装的过程中电脑出现了循环登录的问题。在进行了硬盘挂载后,进行了一次电脑重启,然后就出现了循环登录的问题。在网上查找后,发现有以下几种问题:驱动问题:对驱动进行卸载,然后重装.Xauthority 权限问题配置文件环境变量问题因为在修改硬盘挂载配置文件之前,系统驱动已经安装好,重启后也没有出现问题,所以没有考虑是驱动的问题,接下来我尝试了问题2,发现问题2没事。最后将硬盘挂载配置文件恢复到之前的状态,进行了重启,解决了循环登录。此时就确定了是硬盘挂载的配置出现了问题。。。。

2021-09-06 13:52:33 917 2

转载 precison和recall

如果你说的是recall和precision假设一共有10篇文章,里面4篇是你要找的。根据你某个算法,你认为其中有5篇是你要找的,但是实际上在这5篇里面,只有3篇是真正你要找的。那么你的这个算法的precision是3/5=60%,也就是,你找的这5篇,有3篇是真正对的这个算法的recall是3/4=75%,也就是,一共有用的这4篇里面,你找到了其中三篇。请自行归纳总结。作者:付滨链接:https://www.zhihu.com/question/19645541/answer/12502751

2021-09-04 15:21:36 125

原创 pytroch对网络模型的某层进行冻结

下面的代码会将net网络的每层都进行冻结,如果需要冻结特定的某些层的话,可以根据该层的名字name来进行筛选,然后将requires_grad设置为false即可。for name, p in net.named_parameters():# 查看自己网络参数各层名称、数值 print(name, p) p[1].requires_grad = False...

2021-08-22 15:03:28 359

原创 python批量tif文件转化jpg文件格式

在进行图像处理的时候,可能会遇到tif格式的文件,如果需要批量将其转化为jpg格式文件,可以使用如下代码,在代码中指定好tif格式文件存放的路径以及要保存生成的jpg格式文件的路径即可。代码如下import osimport globfrom PIL import Imagesource_dir = 'C:\\Users\\ljk\\Desktop\\source_dir\\'target_dir = 'C:\\Users\\ljk\\Desktop\\target_dir\\'# 如果目标

2021-08-15 10:29:59 2532 2

翻译 java中的多线程技术

基本概念程序为完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码,静态对象。进程是程序的一次执行过程,或是正在运行的一个程序。是一个动态的过程:有它自身的产生、存在和消亡的过程。——生命周期如:运行中的QQ,运行中的MP3播放器程序是静态的,进程是动态的进程作为资源分配的单位,系统在运行时会为每个进程分配不同的内存区域线程进程可进一步细化为线程,是一个程序内部的一条执行路径。若一个进程同一时间并行执行多个线程,就是支持多线程的线程作为调度和执行的单位,每个线程拥有独

2021-04-29 11:23:34 527

翻译 java异常处理

世界上最遥远的距离,是我在if里你在else里,似乎一直相伴又永远分离;世界上最痴心的等待,是我当case你是switch,或许永远都选不上自己;世界上最真情的相依,是你在try我在catch。无论你发神马脾气,我都默默承受,静静处理。到那时,再来期待我们的finally。...

2021-04-21 10:42:56 82

翻译 java工厂模式

定义实现了创建者与调用者的分离,即将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的目的。其实设计模式和面向对象设计原则都是为了使得开发项目更加容易扩展和维护,解决方式就是一个“分工”。工厂模式分类简单工厂模式用来生产同一等级结构中的任意产品。(对于增加新的产品,需要修改已有代码)实现interface Car { void run();}class Audi implements Car { public void run() { System.out.println("奥迪在跑"

2021-04-20 22:18:54 91

原创 代理模式

介绍代理模式是Java开发中使用较多的一种设计模式。代理设计就是为其他对象提供一种代理以控制对这个对象的访问。示例interface Network { public void browse();}// 被代理类class RealServer implements Network { @Override public void browse() { System.out.println("真实服务器上网浏览信息"); }}// 代理类class ProxyServer im

2021-04-20 20:34:41 63

原创 模板方法设计模式(TemplateMethod)

介绍抽象类体现的就是一种模板模式的设计,抽象类作为多个子类的通用模板,子类在抽象类的基础上进行扩展、改造,但子类总体上会保留抽象类的行为方式。解决的问题当功能内部一部分实现是确定的,一部分实现是不确定的。这时可以把不确定的部分暴露出去,让子类去实现。换句话说,在软件开发中实现一个算法时,整体步骤很固定、通用,这些步骤已经在父类中写好了。但是某些部分易变,易变部分可以抽象出来,供不同子类实现。这就是一种模板模式。示例abstract class Template { public final

2021-04-20 20:05:17 42

原创 单例设计模式

概念所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只提供一个取得其对象实例的方法。如果我们要让类在一个虚拟机中只能产生一个对象,我们首先必须将类的构造器的访问权限设置为private,这样,就不能用new操作符在类的外部产生类的对象了,但在类内部仍可以产生该类的对象。因为在类的外部开始还无法得到类的对象,只能调用该类的某个静态方法以返回类内部创建的对象,静态方法只能访问类中的静态成员变量,所以,指向类内部产生的该类对象的变量也必须定义成静态的。优点

2021-04-20 11:15:35 57

转载 类与类之间的关系

依赖关系(Dependency)对象之间最弱的一种关联方式,是临时性的关联。代码中一般指由局部变量、函数参数、返回值建立的对于其他对象的调用关系。class A{ public B method(C c,D d){ E e=new E(); ... B b =new B(); ...return b; }}在上述的类结构中,表示A类依赖了A,B,C,D类。关联关系(Association)对象之间一种引用关系,比如客户类与订单类之间的关系。这种关系通常使用类的属性表达。关

2021-04-18 20:48:46 93

原创 常见的排序算法

排序算法内部排序:整个排序过程不需要借助于外部存储器(如磁盘等),所有排序操作都在内存中完成。外部排序:参与排序的数据非常多,数据量非常大,计算机无法把整个排序过程放在内存中完成,必须借助于外部存储器(如磁盘)。外部排序最常见的是多路归并排序。可以认为外部排序是由多次内部排序组成。内部排序算法选择排序基本思想:将待排序的元素分为已排序(初始为空)和未排序两组,依次将未排序的元素中值最小的元素放入已排序的组中.直接选择排序排序过程:在一组元素R[i]到R[n]中选择具有最小关键码的元素

2021-04-14 22:03:35 267 1

原创 java基础知识整理

java语言的特点是什么?面向对象性:两个基本概念:类、对象;三大特性:封装、继承、多态健壮性:吸收了C/C++语言的优点,但去掉了其影响程序健壮性的部分(如指针、内存的申请与释放等),提供了一个相对安全的内存管理和访问机制跨平台性:通过Java语言编写的应用程序在不同的系统平台上都可以运行。“Write once , Run Anywhere”JDK,JRE和JVM分别是什么以及它们之间的关系?JDK(java Development Kit),是java的开发工具包。JDK是整个Java

2021-04-11 22:33:05 87

原创 latex环境的搭建

1、下载并安装texlivetexlive相当于是latex的编译器,在清华提供的镜像库中下载比较快,清华镜像链接下载完成后,进行texlive的安装,右键该文件进行装载直接双击install文件即可完成安装,需要的时间比较久,保守估计10个小时以上,第一次装这么久的软件????????????。安装完成后,进行验证texlive是否正常安装。使用下列命令进行查看tex -v此时说明已经正常安装上了。2、tex studio下载与安装可以在tex studio的官方网址,但下载的时候经

2020-12-04 14:41:49 683 3

原创 conda命令总结

1、conda创建环境conda create -n py3.5_torch1.0 python=3.5-n代表的是指定环境的名称,此处的环境命名为py3.5_torch1.0python=3.5代表的是创建的环境中python的版本号2、conda查看当前的所有python环境conda env list该命令展示出当前的conda中创建出的所有的环境名称,此处红色的箭头指向的环境即为刚刚创建的环境。3、conda激活环境上图中当前激活的环境为base环境,使用以下命令进行切换co

2020-12-03 20:15:30 190

原创 python将数组写入到文件中

导出的代码如下:array=["aaa","bbb","ccc","ddd","eee"]str = '\n'f = open("test.txt", "w")# f.write(str.join(pathnames))f.write(str.join(array))f.close()导出的test.txt内容如下:aaabbbcccdddeee

2020-12-02 19:06:49 5236

原创 使用verdaccio搭建npm本地仓库

verdaccio搭建npm本地仓库在本地10.10.10.126服务器上添加了用户npmManager,密码为360yxys.20201.安装nodejs(服务器上的路径为/home/npmManager/node-v14.2.0-linux-x64)下载nodejs压缩包解压:tar -xvf nodejs.tar;建立软链接:ln -s /*****/nodejs/bin/npm /usr/local/bin/ln -s /****/nodejs/bin/node /usr/local

2020-11-29 10:23:05 586

原创 在linux中的docker下搭建cuda环境

安装Dockersudo apt-get remove docker docker-engine docker.io containerd runcsudo apt-get updatesudo apt-get install -y apt-transport-https ca-certificates curl gnupg-agentsoftware-properties-commoncurl -fsSL https://download.docker.com/linux/ubuntu/gpg

2020-11-29 10:20:02 1662 1

原创 寻找一个字符串中的最长的单词

#include &lt;stdio.h&gt;#include &lt;string.h&gt;int main(){ int find_longest_word(char str[]); char str[100]; printf("Please input a sentence, we will find the longest word of the sent...

2020-06-23 14:52:22 851

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除