自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 收藏
  • 关注

原创 【python 3.6】ERROR: No matching distribution found for python-opencv

python 3.6安装python-opencv出错:改用命令 python -m pip install python-opencv即可。

2020-01-09 18:36:10 7096

原创 python 批量命名图片

#!/usr/bin/env python# !-*- coding:utf-8 -*-# !@Time : 2019/12/31 9:35# !@Author : Zstar# -*- coding:utf8 -*-import osclass BatchRename(): ''' 批量重命名文件夹中的图片文件 ''' def rena...

2020-01-07 16:08:24 264

原创 win10下CUDA安装之路

1.根据显卡驱动版本号确定合适的cuda版本:确定显卡驱动版本号对应的版本号参考下图:我的笔记本能支持的CUDA最高版本是 10.12.安装CUDA 10.1CUDA版本选择还要要看操作系统和编译环境的需求。CUDA 10.1支持的操作系统和编译环境参考下图:下载CUDA Toolkit【CUDA Toolkit下载传送门】验证是否装好:cd $evn:CUDA_P...

2019-12-20 10:47:45 459

原创 Java基础:静态变量和非静态变量

静态变量和非静态变量之间的区别:内存静态变量在类被加载时分配内存空间的,存在于方法区,销毁于类被卸载时。非静态变量被实例化后才会分配内存。生命周期静态变量的生命周期和应用程序的生命周期是一样的。非静态变量的生命周期取决于实例化的类的生命周期。静态方法和非静态方法之间的区别。3.静态方法(变量)的生命周期是一个什么样子的过程?...

2019-11-27 10:36:31 251

原创 【剑指offer】字符组合问题

输入:a,b,c三个字符,求它们的所有组合输出: a,b,c,ab,ac,bc,abc Set<ArrayList<Character>> set; //字符的组合问题 public Set<ArrayList<Character>> characterConpose(char[] chars){ se...

2019-11-27 10:34:49 127

原创 【面试】TCP相关

以下都是面试经验不足的笔者在为数不多的面试过程中遇到的一些问题,解答仅供参考。TCP和UDP的区别答:TCP是面向连接的协议,在数据传输之前会在通信双方之间建立连接,是能保证可靠传输的协议,接收方接收到的数据是完整、有序、无差错的;UDP不需要建立连接,不保证可靠传输,接收方接收到的数据可能存在部分丢失,顺序性也得不到保证。TCP是怎样保持可靠连接的?答:TCP为了保证数据的完整、有...

2019-11-27 10:14:27 85

原创 SQL中分页查询

SQL查询语句中的 limit 与 offset 的区别:limit y 分句表示: 读取 y 条数据limit x, y 分句表示: 跳过 x 条数据,读取 y 条数据limit y offset x 分句表示: 跳过 x 条数据,读取 y 条数据练习题:leetcode[176]第二高的薪水查询语句:select(select distinct Salary from...

2019-09-06 14:30:57 989

原创 Redis中基于hash的字典的hash算法

Redis中的hash实现。Redis中hash表的数据结构:typedef struct dictht{ dictEntry **table; //hash表数组 unsigned long size; //hash表大小 unsigned long sizemask; //hash表大小掩码,等于size-1,和hash值一起计算索引值 unsigned long use...

2019-09-02 19:36:24 924

原创 通过源码编译linux内核

1、到官网查找想要下载内核的版本,通过wget命令下载源码的压缩包。2、解压源码的压缩包放到/usr/src/kernels目录下:tar -xvf linux-5.2.11.tar.xz -c /usr/src/kernels3、进入/usr/src/kernels目录,配置内核编译参数。注意要先安装配置图形化界面的软件包:ncurses-devel。make menuconfig...

2019-09-02 19:35:14 230

原创 【leetcode 300】最长上升子序列 O(nlogn)解法

题目:最长上升子序列思路:维护一个minend数组,minend[i]保存长度为i的上升子序列中,最小的尾部元素的数值。minend数组中最后一个元素即为最长上升子序列的尾部元素,该尾部元素在minend数组中的位置坐标即为最长子序列的长度。理解了维护minend数组的过程,就很容易写出代码:看上面的例子,走一遍过程思路应该就能理清楚了——首先初始化数组minend: minend[1...

2019-08-30 15:48:42 319

转载 forward与redirect的区别

forward(转发)和redirect(重定向)是servlet种的两种主要的跳转方式。forword转发过程:客户浏览器发送http请求—>web服务器接受此请求—>调用内部的一个方法在容器内部完成请求处理和转发动作—>将目标资源 发送给客户;在这里,转发的路径必须是同一个web容器下的url,其不能转向到其他的web路径上去,中间传递的是自己的容器内的request。在客...

2019-08-26 13:43:46 257

转载 http状态码301和302详解及区别

原文链接:https://blog.csdn.net/grandPang/article/details/47448395301 redirect: 301 代表永久性转移(Permanently Moved)302 redirect: 302 代表暂时性转移(Temporarily Moved )同:301和302状态码都表示重定向,浏览器在拿到服务器返回的这两个状态码后会自动跳转到一...

2019-08-26 13:06:31 873

原创 【剑指offer】把数组排成最小的数

题目描述输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。两种解法,一种全排列,一种定义新的比较大小的方法对数组进行排序。法一:全排列假设数组长度为n,对数组进行全排列,一共n!中结果,从所有结果中取最小的一种排列方式。代码如下:import java.u...

2019-08-19 14:59:19 87

原创 【加强理解】Java中强引用、软引用、弱引用和幻象引用的区别

Java中的不同引用主要体现在 对象不同的可达性 和 对垃圾回收的影响。首先了解一下对象的定向访问:Java程序是通过栈上的引用来操作堆上的具体对象。判断对象是否已死,可采用引用计数算法和可达性分析算法。其中,1.引用计数算法:给对象中添加一个引用计数器,每当有一个地方引用它时,引用计数器+1;当引用失效时,计数器值就减1。任何时刻计数器为0的对象时不可能再被使用的。这个算法主要存在的问题就...

2019-08-13 21:25:31 143

原创 《三》MySQL事务隔离——ACID中的I

事务:要保证一组数据库操作要么完全成功,要么完全失败。事务隔离存在的意义:一组事务同时对数据库中某一条数据进行操作,可能出现脏读、不可重复读、幻读的问题。为了解决这些问题,就出现了隔离级别的概念。在MySQL中,事务的支持是在引擎层支持的。SQL标准事务的隔离级别有四:1.读未提交:即使事务未提交更新,该事务对数据做的修改对其他事务可见。2.读提交:只有在事务提交更新之后,该事务对数做...

2019-08-05 15:55:49 125

原创 《二》MySQL中的日志模块

redo log:重做日志——是引擎层InnoDB特有的日志,是物理日志,记录在某一页上的数据做了什么修改。在数据更新时,先写内存,将修改记录到redo log中,在系统空闲时刻根据redo log对磁盘进行更新,保证更新效率。WAL(Write-Ahead Logging)技术:先写日志,再写磁盘。write pos:当前写的位置checkpoint:当前要擦除的位置保证之前提交的记...

2019-08-05 15:15:12 117

原创 查找数组中最小k个数

思路:可采用大顶堆来实现——维护一个规模为k的大顶堆。从前往后扫描数组元素:若大顶堆的size小于k,则把当前元素插入大顶堆中;若小于k, 若当前元素小于堆顶元素,则删除堆顶元素,插入当前元素。考虑到从头实现一个大顶堆比较麻烦,这里使用TreeSet容器,它提供有序的set。TreeSet底层实际使用的是TreeMap,而TreeMap是用红黑树实现的,在红黑树中查找插入和删除都只要O(l...

2019-08-01 14:33:47 204

原创 trie树之敏感词过滤算法

之前写过一篇关于Trie树的介绍:Trie树——在一个字符串集合中快速查找某个字符串。今天就用Trie树来实现敏感词过滤算法。首先简单介绍一下Trie树的数据结构:1.根节点不存储字符。2.Trie树中除了根节点外其余节点都需要存储一个字符,另外还需要一个标记来确定当前节点是否为敏感词中的最后一个字符。3.每个节点的所有子节点包含的字符都不相同。了解了Trie树的基本结构,就可以开始思考...

2019-07-22 17:42:22 1114

原创 【LeetCode】5.求最长回文子串

题目描述: 给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。1.O(n^2)解法:①定义一个二维辅助数组p,其中p[i][j]的含义:p[i][j] = s.substring(i,j+i) 是否是回文子串?1:0;②初始情况:当i=j时,p[i][j] = 1; 当i=j-1时,p[i][j] = s[i]==s[j]?1:0;③那么,现在的...

2019-07-17 16:15:09 120

转载 在IDEA中使用Lombok

1.安装lombok插件file->setting->plugins->lombok2.在pom.xml中添加lombok的相关依赖<dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> ...

2019-07-13 21:30:51 97

原创 Java NIO总结

平时没有怎么接触到Java NIO,今天特地学习总结一下。Java NIO:Non-bloking IO(非阻塞IO)–>标准的IO是基于字节流和字符流进行操作的,而NIO是基于通道(Channel)和缓存区(Buffer)进行操作,数据总是从通道读取到缓冲区中,或者从缓冲区中写入到通道中。当线程从通道读取数据到缓冲区时,线程还可以做其他事情,当数据被写入到缓冲区时,线程可以继续处理...

2019-07-13 15:38:38 95

原创 Spring Boot 中参数解析的两种方式

解析前端页面传递过来的参数信息的两种方式:1.@PathVariable:从路径中解析。2.@RequestParam:从request请求中解析参数(支持地址栏中?后面的参数和post请求)。示例代码:解析url中的参数:127.0.0.1:8080/profile/user/1?type=2&key=z@RequestMapping(value = "/profile/{gr...

2019-07-08 20:42:39 358

原创 【AOP】面向切面编程 logger实例

面向切面:所有业务都要处理的业务。 例如:日志服务1.在使用AOP之前,在pom.xml文件中导入相关依赖:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-aop</artifactId&gt...

2019-07-08 20:19:21 216

转载 记录:spring boot项目中target没用同步更新最新目录文件及资源

原文地址:解决idea spring boot项目中target中没有同步更新最新目录文件及资源在pom.xml文件中手动设置将新保存的文件或目录及其他资源更新到target目录中:<build> <resources> <resource> <directory>s...

2019-07-07 17:11:12 3489

原创 【LeetCode 】3.无重复最长子串(双端队列)

3.无重复最长子串给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。思路:看完题目就觉得用双端队列来实现挺好。求最长无重复子串,如果按照“求所有子串–>从所有子串中选出最长无重复子串”这个思路,显然需要搜索的解空间太大。但如果采用双端队列,每次只针对当前处理的无重复子串长度来更新无重复子串的最大值,这样就快很多。双端队列的优势在于,可以从前后两个方向操作元素。因此在本...

2019-07-04 14:08:28 133

转载 PCA的数学原理

原文地址:http://blog.codinglabs.org/articles/pca-tutorial.html1)将原始数据按列组成n行m列矩阵X2)将X的每一行(代表一个属性字段)进行零均值化,即减去这一行的均值3)求出协方差矩阵C=1mXXT4)求出协方差矩阵的特征值及对应的特征向量5)将特征向量按对应特征值大小从上到下按行排列成矩阵,取前k行组成矩阵P6)Y=PX即为降维...

2019-06-20 19:52:42 86

原创 HDU_【1495】非常可乐

端午回家嗨之前,刷道题提前嗨~Problem Description大家一定觉的运动以后喝可乐是一件很惬意的事情,但是seeyou却不这么认为。因为每次当seeyou买了可乐以后,阿牛就要求和seeyou一起分享这一瓶可乐,而且一定要喝的和seeyou一样多。但seeyou的手中只有两个杯子,它们的容量分别是N 毫升和M 毫升 可乐的体积为S (S<101)毫升 (正好装满一瓶) ,它...

2019-06-06 16:22:57 164

原创 SpringBoot : demo在IDEA中找不到主类的解决方法

问题描述:从github上clone下来的spring boot项目,在IDEA中无法配置Run/DebugConfigurations。也就是说,在跑spring boot项目时,在IDEA中无法找到Main。我当时还不知道问题出在哪里,但是在网上找了一些blog,参照:https://blog.csdn.net/zpf_940810653842/article/details/813...

2019-06-06 10:19:43 4669

转载 取模优化问题

C语言除法算法和取模运算的实现(多种算法,多种思路)ACM算法:快速幂取模(详细)

2019-05-25 14:41:24 1156

原创 堆排序的应用——小范围内排序

已知一个几乎有序的数组,几乎有序是指,如果把数组排好顺序的话,每个元素移动的距离可以不超过k,并且k相对于数组来说比较小。请选择一个合适的排序算法针对这个数据进行排序。给定一个int数组A,同时给定A的大小n和题意中的k,请返回排序后的数组。测试样例: [2,1,4,3,6,5,8,7,10,9],10,2返回:[1,2,3,4,5,6,7,8,9,10]思路:1.本题给定的数组几乎...

2019-05-23 23:02:03 337

原创 【排序算法】java实现九个基础排序

【冒泡排序】import java.util.*;//冒泡排序public class BubbleSort { public int[] bubbleSort(int[] A, int n) { for(int i=0;i<n;++i) { for(int j=1;j<n-i;++j) { if(A[j]&lt...

2019-05-22 15:36:01 131

原创 [动态规划] 钱币找零

最近开始撸算法,emm…,些许艰难,幸而有信念来支撑,哈,加油。钱币找零问题:有数组penny,penny中所有的值都为正数且不重复。每个值代表一种面值的货币,每种面值的货币可以使用任意张,再给定一个整数aim(小于等于1000)代表要找的钱数,求换钱有多少种方法。给定数组penny及它的大小(小于等于50),同时给定一个整数aim,请返回有多少种方法可以凑成aim。测试样例: [1,...

2019-05-21 22:26:08 247

原创 [动态规划]1048.最长字符串链

给出一个单词列表,其中每个单词都由小写英文字母组成。如果我们可以在 word1 的任何地方添加一个字母使其变成 word2,那么我们认为 word1 是 word2 的前身。例如,“abc” 是 “abac” 的前身。词链是单词 [word_1, word_2, …, word_k] 组成的序列,k >= 1,其中 word_1 是 word_2的前身,word_2 是 word_3 的前...

2019-05-20 14:54:09 496

原创 【5050】困于环中的机器人

困于环中的我 (T-T)在无限的平面上,机器人最初位于 (0, 0) 处,面朝北方。机器人可以接受下列三条指令。 “G”:直走 1 个单位; “L”:左转 90 度 ; “R”:右转 90 度 。机器人按顺序执行指令 instructions,并一直重复它们。只有在平面中存在环使得机器人永远无法离开时,返回 true。否则,返回 false。示例 1:输入:“GGLLGG”输出:...

2019-05-14 18:30:19 246

原创 Java的反射机制与动态代理

Java的反射机制:为Java提供在运行时自省的能力。反射机制允许程序在执行期借助于Reflection API取得任何类的內部信息,可以直接操作类或者对象,比如获取某个对象的类的定义,获取类声明的属性或者方法,调用方法或者构造对象,甚至可以在运行过程中修改类的定义.反射:1.获取.class文件对应的Class类型的对象。2.通过Class对象的getConstructor()、get...

2019-05-13 20:40:19 262

原创 Java 提供的一些IO方式

       传统的java.io包基于流模型实现,提供了一些 如FIle抽象,输入输出流等基本功能,交互方式是同步、阻塞的方式(Blocking IO)。也就是说,在读取输入流或者写入输出流时,在读、写操作完成之前,线程会一直阻塞在那里,他们之间的调用是可靠的线性顺序。传统的Java.io的优势在于简单直观,但IO效率不高,其扩展性受...

2019-05-10 15:47:48 162

原创 【1029】两地调度

公司计划面试 2N 人。第 i 人飞往 A 市的费用为 costs[i][0],飞往 B 市的费用为 costs[i][1]。 返回将每个人都飞到某座城市的最低费用,要求每个城市都有 N 人抵达。示例:输入:[[10,20],[30,200],[400,50],[30,20]]输出:110解释: 第一个人去 A 市,费用为 10。 第二个人去 A 市,费用为 30。 第三个人去 B 市,...

2019-05-09 18:48:16 425

转载 怎样画马?

2019-05-08 19:43:13 400 1

原创 【1039】多边形三角剖分的最低得分

给定 N,想象一个凸 N 边多边形,其顶点按顺时针顺序依次标记为 A[0], A[i], …, A[N-1]。假设您将多边形剖分为N-2 个三角形。对于每个三角形,该三角形的值是顶点标记的乘积,三角剖分的分数是进行三角剖分后所有 N-2个三角形的值之和。返回多边形进行三角剖分后可以得到的最低分。示例 1:输入:[1,2,3]输出:6解释:多边形已经三角化,唯一三角形的分数为 6。示例 ...

2019-05-08 14:06:26 901

原创 【力扣134场周赛 】5040 边框着色

给出一个二维整数网格 grid,网格中的每个值表示该位置处的网格块的颜色。 只有当两个网格块的颜色相同,而且在四个方向中任意一个方向上相邻时,它们属于同一连通分量。 连通分量的边界是指连通分量中的所有与不在分量中的正方形相邻(四个方向上)的所有正方形,或者在网格的边界上(第一行/列或最后一行/列)的所有正方形。给出位于 (r0, c0) 的网格块和颜色 color,使用指定颜色 color 为所...

2019-04-29 10:41:20 225

空空如也

空空如也

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

TA关注的人

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