自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(248)
  • 资源 (1)
  • 收藏
  • 关注

原创 一些比较好的书籍和视频

java《java 编程思想》(这本书不适合零基础的人看)https://github.com/LingCoder/OnJava8《Effective Java》《深入理解Java虚拟机》《Java并发编程艺术》《Java并发编程实战》操作系统视频:2020 南京大学 “操作系统:设计与实现” (蒋炎岩)操作系统(哈工大李治军老师)32讲(全)超清《深入理解计算机系统》重点:第2、3、5、6、7、9、10章《现代操作系统》重点:内存管理和进程管理数据库视频:数据库系统(哈尔

2021-07-12 10:10:20 233

原创 Linux下创建、复制、删除和移动文件夹

1.创建新的文件夹mkdir 文件夹的名字2.将一个文件夹复制到另一个文件夹cp -r 原来的文件夹/. 目标文件夹例如:cp -r automaskmitosis/. mitosiscbam_avg/automaskmitosis是原来的文件夹, mitosiscbam_avg是目标文件夹3.删除文件夹rm -r 文件夹...

2021-03-25 15:46:56 519

原创 Windows通过putty传送文件夹到服务器

需求将存放在桌面上的文件夹datasets通过putty传到远程服务器备注:datasets文件夹有多个子文件夹具体操作1.在下载好putty的前提下,如果没有,可以到以下网址下载pscp.exe 和Putty.exe网址:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html2. 将pscp.exe与Putty.exe文件放在一起,打开命令行,进入putty.exe存放的位置3.输入命令行pscp -r -P 22 (

2020-12-24 15:59:38 900

原创 AttributeError: ‘str‘ object has no attribute ‘decode‘

运行代码时出现的错误Traceback (most recent call last):File “mitosis.py”, line 304, in model.load_weights(weights_path, by_name=True)File “/opt/anaconda3/envs/tfenv/lib/python3.6/site-packages/mask_rcnn-2.1-py3.6.egg/mrcnn/model.py”, line 2119, in load_weightsFi

2020-11-20 17:01:42 1167

原创 死锁举例以及检测死锁

什么是死锁两个或两个以上的进程在执行过程中,因争夺资源而造成的一种互相等待的现象。举一个死锁的例子线程A持有对象a的锁,线程B持有对象b的锁, 然后这两个线程都在等待对方法释放其对象的锁。public class DieLock { public static void main(String[] args) { final Object a = new Object(); final Object b = new Object(); Thread threadA

2020-11-11 21:15:21 500

原创 python读取csv文件某几列

CSV文件的内容如下所示,目标是读取CSV文件前两列的数据,即A列和B列代码import csv#csv文件存储的位置file = 'G:/google下载/数据集/2014/A03.tar/A03/mitosis/A03_00Cc_mitosis.csv'with open(file,'r', encoding = 'UTF-8') as f : reader = csv.reader(f) A = [] B = [] for row in reader:

2020-11-10 21:45:40 5715

原创 python 绘制椭圆

调用matplotlib的包函数代码from matplotlib.patches import Ellipseimport matplotlib.pyplot as pltfig = plt.figure()ax = fig.add_subplot(111)ell1 = Ellipse(xy = (0.0, 0.0), width = 4, height = 8, angle = 90.0, facecolor= 'yellow', alpha=0.3)ax.add_patch(ell1)

2020-11-09 17:07:18 9080 1

原创 LeetCode第64题最小路径和

题目来源题目描述给定一个包含非负整数的 m x n 网格,请找出一条从左上角到右下角的路径,使得路径上的数字总和为最小。说明:每次只能向下或者向右移动一步。示例:输入:[[1,3,1],[1,5,1],[4,2,1]]输出: 7解释: 因为路径 1→3→1→1→1 的总和最小。代码class Solution { public int minPathSum(int[][] grid) { if(grid == null || grid.length ==

2020-10-26 19:08:13 112

原创 线程池

目录为什么要使用线程池如何创建线程池核心参数线程池的处理流程和原理常用的阻塞队列1、 ArrayBlockingQueue2、LinkedBlockingQueue3、PriorityBlockingQueue4、SynchronousQueue5、DelayedQueue饱和策略线程池的种类FixedThreadPoolCachedThreadPoolSingleThreadExecutorScheduledThreadPool为什么要使用线程池控制并发的数量,并发数量过多,可能会导致资源消耗过多

2020-10-12 14:56:44 105

原创 LeetCode第918题环形子数组的最大和

题目来源题目描述给定一个由整数数组 A 表示的环形数组 C,求 C 的非空子数组的最大可能和。在此处,环形数组意味着数组的末端将会与开头相连呈环状。(形式上,当0 <= i < A.length 时 C[i] = A[i],且当 i >= 0 时 C[i+A.length] = C[i])此外,子数组最多只能包含固定缓冲区 A 中的每个元素一次。(形式上,对于子数组 C[i], C[i+1], …, C[j],不存在 i <= k1, k2 <= j 其中 k1 % A

2020-10-11 16:47:39 165

原创 单例模式

目录单例模式饿汉模式懒汉模式(线程不安全)懒汉模式(线程安全)双重检查模式 DCL(Double-Check-locking)单例模式单例模式解决的两个基本问题:全局访问和实例化控制优点:单例模式保证唯一的实例和唯一实例的受控访问因为Sinleton封装它的唯一实例,这样它可以严格地控制客户怎么访问它以及何时访问它。饿汉模式静态初始化在类加载时就完成了初始化,提前占用系统资源public class Singleton { //静态初始化 private static Singleton

2020-10-09 21:37:39 105 1

原创 LeetCode第406题根据身高重建队列

题目来源题目描述假设有打乱顺序的一群人站成一个队列。 每个人由一个整数对(h, k)表示,其中h是这个人的身高,k是排在这个人前面且身高大于或等于h的人数。 编写一个算法来重建这个队列。注意:总人数少于1100人。示例输入:[[7,0], [4,4], [7,1], [5,0], [6,1], [5,2]]输出:[[5,0], [7,0], [5,2], [6,1], [4,4], [7,1]]...

2020-10-04 17:00:43 128

原创 LeetCode第452题用最少数量的箭引爆气球

题目来源题目描述在二维空间中有许多球形的气球。对于每个气球,提供的输入是水平方向上,气球直径的开始和结束坐标。由于它是水平的,所以y坐标并不重要,因此只要知道开始和结束的x坐标就足够了。开始坐标总是小于结束坐标。平面内最多存在104个气球。一支弓箭可以沿着x轴从不同点完全垂直地射出。在坐标x处射出一支箭,若有一个气球的直径的开始和结束坐标为 xstart,xend, 且满足 xstart ≤ x ≤ xend,则该气球会被引爆。可以射出的弓箭的数量没有限制。 弓箭一旦被射出之后,可以无限地前进。我们

2020-10-04 16:43:09 213

原创 LeetCode第435题无重叠区间

题目来源题目描述给定一个区间的集合,找到需要移除区间的最小数量,使剩余区间互不重叠。注意:可以认为区间的终点总是大于它的起点。区间 [1,2] 和 [2,3] 的边界相互“接触”,但没有相互重叠。示例 1:输入: [ [1,2], [2,3], [3,4], [1,3] ]输出: 1解释: 移除 [1,3] 后,剩下的区间没有重叠。示例 2:输入: [ [1,2], [1,2], [1,2] ]输出: 2解释: 你需要移除两个 [1,2] 来使剩下的区间没有重叠。示例 3:输入

2020-10-04 16:10:38 178

原创 LeetCode第455题分发饼干

题目来源题目描述假设你是一位很棒的家长,想要给你的孩子们一些小饼干。但是,每个孩子最多只能给一块饼干。对每个孩子 i ,都有一个胃口值 gi ,这是能让孩子们满足胃口的饼干的最小尺寸;并且每块饼干 j ,都有一个尺寸 sj 。如果 sj >= gi ,我们可以将这个饼干 j 分配给孩子 i ,这个孩子会得到满足。你的目标是尽可能满足越多数量的孩子,并输出这个最大数值。注意:你可以假设胃口值为正。一个小朋友最多只能拥有一块饼干。示例 1:输入: [1,2,3], [1,1]输出: 1解

2020-10-04 15:46:15 903

原创 LeetCode第524题通过删除字母匹配到字典里最长单词

题目来源题目描述给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。示例 1:输入:s = “abpcplea”, d = [“ale”,“apple”,“monkey”,“plea”]输出:“apple”示例 2:输入:s = “abpcplea”, d = [“a”,“b”,“c”]输出:“a”说明:所有输入的字符串只包含小写字母。字典

2020-10-04 15:23:59 103

原创 LeetCode第680题 验证回文字符串 Ⅱ

题目来源题目描述给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。示例 1:输入: “aba”输出: True示例 2:输入: “abca”输出: True解释: 你可以删除c字符。注意:字符串只包含从 a-z 的小写字母。字符串的最大长度是50000。代码class Solution { public boolean validPalindrome(String s) { for(int i = 0, j = s.length() - 1

2020-09-30 11:05:06 101

原创 LeetCode第191题 位1的个数

题目来源题目描述编写一个函数,输入是一个无符号整数,返回其二进制表达式中数字位数示例 1:输入:00000000000000000000000000001011输出:3解释:输入的二进制串 00000000000000000000000000001011 中,共有三位为 ‘1’。示例 2:输入:00000000000000000000000010000000输出:1解释:输入的二进制串 00000000000000000000000010000000 中,共有一位为 ‘1’。示例 3:

2020-09-30 10:54:25 92

原创 LeetCode第345题反转字符串中的元音字母

题目来源题目描述编写一个函数,以字符串作为输入,反转该字符串中的元音字母。示例 1:输入:“hello”输出:“holle”示例 2:输入:“leetcode”输出:“leotcede”提示:元音字母不包含字母 “y”代码class Solution { public String reverseVowels(String s) { if(s == null || s.length() == 0) return s; String vowels

2020-09-28 19:02:27 114

原创 LeetCode第633题平方数之和

题目来源题目描述给定一个非负整数 c ,你要判断是否存在两个整数 a 和 b,使得 a2 + b2 = c。示例1:输入: 5输出: True解释: 1 * 1 + 2 * 2 = 5示例2:输入: 3输出: False解题思路可以把这个问题转为:求解1~target的有序数组中查找两个数,使得这两个数的平方和为target,如果能找到,则返回true,表示target是两个整数的平方和。注意点输入: 2输出: True解释: 1 * 1 + 1 * 1 = 5左边的指针应为

2020-09-28 16:36:11 142

原创 LeetCode第696题计数二进制子串

题目来源题目描述给定一个字符串 s,计算具有相同数量0和1的非空(连续)子字符串的数量,并且这些子字符串中的所有0和所有1都是组合在一起的。重复出现的子串要计算它们出现的次数。示例 1 :输入: “00110011”输出: 6解释: 有6个子串具有相同数量的连续1和0:“0011”,“01”,“1100”,“10”,“0011” 和 “01”。请注意,一些重复出现的子串要计算它们出现的次数。另外,“00110011”不是有效的子串,因为所有的0(和1)没有组合在一起。示例 2 :输入:

2020-09-28 15:57:25 74

原创 剑指 Offer 61. 扑克牌中的顺子

题目来源题目描述从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王为 0 ,可以看成任意数字。A 不能视为 14。示例 1:输入: [1,2,3,4,5]输出: True示例 2:输入: [0,0,1,2,5]输出: True限制:数组长度为 5数组的数取值为 [0, 13]题意理解把5张牌看成由5个数字组成的数组。大王和小王是比较特殊的牌,我们把它们定义为0。判断5张扑克牌是不是顺子,转化为判断

2020-09-26 11:20:36 89

原创 LeetCode第82题删除排序链表中的重复元素 II

题目来源题目描述给定一个排序链表,删除所有含有重复数字的节点,只保留原始链表中 没有重复出现 的数字。示例 1:输入: 1->2->3->3->4->4->5输出: 1->2->5示例 2:输入: 1->1->1->2->3输出: 2->3代码/** * Definition for singly-linked list. * public class ListNode { * int val;

2020-09-25 19:48:50 120

原创 LeetCode第83题 删除排序链表中的重复元素

题目来源题目描述给定一个排序链表,删除所有重复的元素,使得每个元素只出现一次。示例 1:输入: 1->1->2输出: 1->2示例 2:输入: 1->1->2->3->3输出: 1->2->3代码/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * ListNod

2020-09-25 16:54:51 77

原创 LeetCode第20题有效的括号

题目来源题目描述给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。示例 1:输入: “()”输出: true示例 2:输入: “()[]{}”输出: true示例 3:输入: “(]”输出: false示例 4:输入: “([)]”输出: false示例 5:输入: “{[]}”输出: true解题思路使用

2020-09-24 15:26:35 101

原创 LeetCode第1143题最长公共子序列

题目来源给定两个字符串 text1 和 text2,返回这两个字符串的最长公共子序列的长度。一个字符串的 子序列 是指这样一个新的字符串:它是由原字符串在不改变字符的相对顺序的情况下删除某些字符(也可以不删除任何字符)后组成的新字符串。例如,“ace” 是 “abcde” 的子序列,但 “aec” 不是 “abcde” 的子序列。两个字符串的「公共子序列」是这两个字符串所共同拥有的子序列。若这两个字符串没有公共子序列,则返回 0。示例 1:输入:text1 = “abcde”, text2 =

2020-09-24 10:26:38 340

原创 Java程序初始化的顺序

执行顺序父类静态变量 ,父类静态代码块,子类静态变量,子类静态代码块,父类非静态变量,父类非静态代码块,父类构造函数,子类非静态变量,子类非静态代码块, 子类构造函数原因在java语言中,当实例化对象时,对象所在类的所有成员变量首先要进行初始化,只有当所有类成员完成初始化,才会调用对象所在类的构造函数创建对象。在《深入理解java虚拟机》中提到,在初始化阶段,虚拟机规范严格规定了有且只有5种情况必须立即对类进行“初始化”,其中提到,(1)遇到getstatic,putstatic,invokest

2020-09-23 16:33:13 79

原创 LeetCode第167题两数之和 II - 输入有序数组

题目来源题目描述给定一个已按照升序排列 的有序数组,找到两个数使得它们相加之和等于目标数。函数应该返回这两个下标值 index1 和 index2,其中 index1 必须小于 index2。说明:返回的下标值(index1 和 index2)不是从零开始的。你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。示例:输入: numbers = [2, 7, 11, 15], target = 9输出: [1,2]解释: 2 与 7 之和等于目标数 9 。因此 index1

2020-09-23 10:01:12 90

原创 LeetCode第692题前K个高频单词

题目来源题目描述给一非空的单词列表,返回前 k 个出现次数最多的单词。返回的答案应该按单词出现频率由高到低排序。如果不同的单词有相同出现频率,按字母顺序排序。示例 1:输入: [“i”, “love”, “leetcode”, “i”, “love”, “coding”], k = 2输出: [“i”, “love”]解析: “i” 和 “love” 为出现次数最多的两个单词,均为2次。注意,按字母顺序 “i” 在 “love” 之前。示例 2:输入: [“the”, “day”, “i

2020-09-22 16:44:16 140 1

原创 LeetCode第347题前 K 个高频元素

题目来源题目描述给定一个非空的整数数组,返回其中出现频率前 k 高的元素。示例 1:输入: nums = [1,1,1,2,2,3], k = 2输出: [1,2]示例 2:输入: nums = [1], k = 1输出: [1]提示:你可以假设给定的 k 总是合理的,且 1 ≤ k ≤ 数组中不相同的元素的个数。你的算法的时间复杂度必须优于 O(n log n) , n 是数组的大小。题目数据保证答案唯一,换句话说,数组中前 k 个高频元素的集合是唯一的。你可以按任意顺序返回答案

2020-09-21 10:22:33 126

原创 LeetCode第451题根据字符出现频率排序

题目来源题目描述给定一个字符串,请将字符串里的字符按照出现的频率降序排列。示例 1:输入:“tree”输出:“eert”解释:'e’出现两次,'r’和’t’都只出现一次。因此’e’必须出现在’r’和’t’之前。此外,"eetr"也是一个有效的答案。示例 2:输入:“cccaaa”输出:“cccaaa”解释:'c’和’a’都出现三次。此外,"aaaccc"也是有效的答案。注意"cacaca"是不正确的,因为相同的字母必须放在一起。示例 3:输入:“Aabb”输出:

2020-09-21 09:40:27 82

原创 LeetCode第459题重复的子字符串

题目来源题目描述给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成。给定的字符串只含有小写英文字母,并且长度不超过10000。示例 1:输入: “abab”输出: True解释: 可由子字符串 “ab” 重复两次构成。示例 2:输入: “aba”输出: False示例 3:输入: “abcabcabcabc”输出: True解释: 可由子字符串 “abc” 重复四次构成。 (或者子字符串 “abcabc” 重复两次构成。)代码class Solution {

2020-09-21 09:25:36 102

原创 LeetCode第1047题删除字符串中的所有相邻重复项

题目来源题目描述给出由小写字母组成的字符串 S,重复项删除操作会选择两个相邻且相同的字母,并删除它们。在 S 上反复执行重复项删除操作,直到无法继续删除。在完成所有重复项删除操作后返回最终的字符串。答案保证唯一。示例:输入:“abbaca”输出:“ca”解释:例如,在 “abbaca” 中,我们可以删除 “bb” 由于两字母相邻且相同,这是此时唯一可以执行删除操作的重复项。之后我们得到字符串 “aaca”,其中又只有 “aa” 可以执行重复项删除操作,所以最后的字符串为 “ca”。提示:

2020-09-17 10:09:35 542

原创 反射机制

1、反射是什么在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性,这种动态获取的信息以及动态调用对象的方法的功能称为JAVA语言的反射机制2、获得一个类的类对象的方式(1)类名.class(2)对象.getClass()(3)Class.forName(包名.类名)//第一种方式:类名.classClass stuClass1 = Student.class; //第二种方式:对象.getClass()Student s.

2020-09-16 21:44:37 84

原创 LeetCode第5题最长回文子串

题目来源题目描述给定一个字符串 s,找到 s 中最长的回文子串。你可以假设 s 的最大长度为 1000。示例 1:输入: “babad”输出: “bab”注意: “aba” 也是一个有效答案。示例 2:输入: “cbbd”输出: “bb”小知识点substring(int beginIndex, int endIndex)返回字符串的子字符串,包括起始索引,不包含结束索引代码class Solution { private int lo, maxLen; publi

2020-09-16 14:12:01 84

原创 LeetCode第150题逆波兰表达式求值

题目来源题目描述根据 逆波兰表示法,求表达式的值。有效的运算符包括 +, -, *, / 。每个运算对象可以是整数,也可以是另一个逆波兰表达式。说明:整数除法只保留整数部分。给定逆波兰表达式总是有效的。换句话说,表达式总会得出有效数值且不存在除数为 0 的情况。示例 1:输入: [“2”, “1”, “+”, “3”, “"]输出: 9解释: 该算式转化为常见的中缀算术表达式为:((2 + 1) * 3) = 9示例 2:输入: [“4”, “13”, “5”, “/”, “+”]

2020-09-16 10:56:33 233

原创 LeetCode第1108题 IP 地址无效化

题目来源题目描述给你一个有效的 IPv4 地址 address,返回这个 IP 地址的无效化版本。所谓无效化 IP 地址,其实就是用 “[.]” 代替了每个 “.”。示例 1:输入:address = “1.1.1.1”输出:“1[.]1[.]1[.]1”示例 2:输入:address = “255.100.50.0”输出:“255[.]100[.]50[.]0”提示:给出的 address 是一个有效的 IPv4 地址代码class Solution { public S

2020-09-14 21:44:26 162

原创 LeetCode第9题回文数

题目来源题目描述判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。解题思路把整数分为左右两部分,将右边那部分逆序,与左边那部分对比分两种情况:一个整数的个数是偶数:x

2020-09-09 11:17:39 98

原创 LeetCode第647题回文子串

题目来源题目描述给定一个字符串,你的任务是计算这个字符串中有多少个回文子串。具有不同开始位置或结束位置的子串,即使是由相同的字符组成,也会被视作不同的子串。示例 1:输入:“abc”输出:3解释:三个回文子串: “a”, “b”, “c”示例 2:输入:“aaa”输出:6解释:6个回文子串: “a”, “a”, “a”, “aa”, “aa”, “aaa”提示:输入的字符串长度不会超过 1000 。代码class Solution { int count = 0;

2020-09-09 10:47:44 124

原创 LeetCode第409题最长回文串

题目来源题目描述给定一个包含大写字母和小写字母的字符串,找到通过这些字母构造成的最长的回文串。在构造过程中,请注意区分大小写。比如 “Aa” 不能当做一个回文字符串。注意:假设字符串的长度不会超过 1010。示例 1:输入: “abccccdd”输出: 7解释:我们可以构造的最长的回文串是"dccaccd", 它的长度是 7。代码...

2020-09-08 20:56:44 135

基于openGL的image warpping

基于openGL 的图形变换,用到IDW和RBF这两个算法进行图形变换

2018-12-08

空空如也

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

TA关注的人

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