- 博客(112)
- 收藏
- 关注
原创 vmware,ubuntu16.04,克隆多个虚拟机
关键点,vmware的编辑选项中可以查看虚拟网络编辑器,然后查看子网ip比如192.168.6.0那么所有的克隆的虚拟机都要在这个区段,就是前面的192.168.6都是一样的改ip地址就是sudo gedit/vi /etc/network/interfaces,桌面版的可以使用gedit。然后更改里面的ip地址和网关即可---DHCP每次都是自动设置ip地址,这样就不能每次都用mobaxterm之类的工具连服务器了--克隆虚拟机可以不用每次重装一堆软件,很方便,但是要注意重新设置ip地
2021-03-30 16:24:25
771
转载 kwargs在python中的含义
def foo(*args, **kwargs):print 'args = ', argsprint 'kwargs = ', kwargsprint '---------------------------------------'if __name__ == '__main__':foo(1,2,3,4)foo(a=1,b=2,c=3)foo(1,2,3,4, a=1,b=2,c=3)foo('a', 1, None, a...
2020-10-14 16:17:05
1457
原创 CountDownLatch,CyclcBarrier
CountDownLatch:就是老师去上课发现学生们都没到教室,然后等他们全部进入教室再上课。就是分总结构CyclcBarrier:就是跑步比赛,先要大家一起准备好,然后告诉指挥员自己准备好了,等所有人都准备好了,一声枪响,大家同时一起跑。就是分分结构...
2020-09-26 20:37:54
216
原创 leetcode32,最长有效括号
https://leetcode-cn.com/problems/longest-valid-parentheses/这题用动态规划,但是那个递归公式才是最难的。先定义dp[i]的含义:以第i个字符为尾的最长有效括号的长度。题解中分了两种情况:1. 倒数第二个为(,即..........(),这种情况,dp[i]=dp[i-2]+2;简单想一下,倒数第一能和其他的( 匹配吗,显然不能,否则倒数第二个匹配个寂寞啊。2. 倒数第二个为 ),即 .....(.....)),对于这周..
2020-08-19 20:43:23
1104
原创 关于ThreadLocals中的hashcode计算方法
那个每次增加的值如上。。查阅资料发现跟黄金分割比有关但不是直接用黄金分割比,经过计算,得到如上。。
2020-08-13 19:58:41
609
原创 redis解析啊
sdshdr中的hdr是指header.............注释一下会死吗,这种缩写着重讲一下sdshdr5这种特殊的数据结构,求剩余空间的时候之间返回0,而其他的则返回alloc-len。另外,sdshdr5的flag前面也没有len,alloc这两个字段了。空间集器节省。what's more,对于字符串类型,一般key很短的时候可能用sdshdr5存储,但是value一般至少是sdshdr8。。因为key不变,只会被删除,而value可能会变。zset的两种实现,skiplist,z.
2020-08-05 16:23:18
152
原创 二分法
二分法好像永远都是一道坎啊,总有新的东西可以谈谈。以pdd的一道题为例底下的解法就有用二分法来做的,但是一个点在于,可能有很多个值满足条件(小于该值的数量为k个),但是我们要找到的是恰好为k个,减去1之后就不是k个了。也就是最左边的满足条件的值。最重要的是可能等于k的时候,那个边界值不能变。否则可能错过这里最难的是我们知道二分法可以求出小于该值数量为k的值,但是怎么收敛到刚刚好呢??需要细细品味。...
2020-08-02 15:28:58
166
原创 leetcode377与leetcode518
这两题其实很相似,即第377题去重之后就成了518的答案。查看二者的代码也是及其相似:这种小而精的问题值得好好琢磨总结。//leetcode377 public int combinationSum4(int[] coins, int amount) { int[]dp=new int[amount+1]; dp[0]=1; Arrays.sort(coins); for(int x=1;x<=amount;x++){
2020-07-27 11:12:39
178
原创 PFADD 中的PF是啥,PX中的PX又是啥
不会有人光记命令吧,不会吧。一直对各种命令的缩写都很好奇,一般常见的缩写也能猜到是啥,但是这里的PF??hyperloglog,p是其中的话,f是啥。。带着疑问科学上网,终于找到了答案,这是为了纪念这个算法的提出者:http://algo.inria.fr/flajolet/这是他的主页Philippe Flajolet学习里的彩蛋吧,理工人的浪漫...
2020-07-20 13:59:40
559
原创 154. 寻找旋转排序数组中的最小值 II-------------为啥用右边界而不用左边界
我花了挺长时间用左边界来做,最后发现总是有几个测试用例过不了,刚好评论里也有关于这个点困惑,我就从理论上思考了这个问题。当然,这里可以引申成寻找最大值,那么思考一下分别用左右边界做判断的写法。这里用左边界更好,但是右边界也可以做。右边界的话可以考虑依然使用原来的方法,只需要最后返回nums[(left-1+nums.length)%nums.length] ,因为有可能最小值是第一个。-----其实提一下,这个用到了求出来的最小值的特性,该最小值是最左边的最小值,所以最小值的左边或者数组最后..
2020-07-06 13:47:30
231
原创 java.lang.IllegalArgumentException: Comparison method violates its general contract!
比较方法需要有返回值为0:比如(left,right)->left<right?-1:1;改成 (left,right)->left-right.
2020-07-04 19:00:21
271
原创 关于接口和抽象类
关于选择接口还是抽象类的选择:https://www.ibm.com/developerworks/cn/java/l-javainterface-abstract/接口和抽象类的区别:1. 继承上:一个类可继承多个接口,一个类2. 成员变量:接口的成员变量默认是public final static的,而抽象类则和普通类没有区别3. 成员方法上:属性上,接口的方法都是public abstract的,而抽象类则和普通类没有区别。4. 接口能继承接口,但不能继承类,抽象类可以实现接口.
2020-06-29 11:50:51
148
原创 java深浅拷贝
//序列化方法实现深拷贝 ByteArrayOutputStream bos=new ByteArrayOutputStream(); ObjectOutputStream oos=new ObjectOutputStream(bos); oos.writeObject(stu1); oos.flush(); ...
2020-06-29 11:05:42
136
原创 leetcode115 不同的子序列:谈dp问题的初始化
动态规划题目,初始化呢是个技巧活,把问题稍微转化,可以使得代码变得简洁。这里的dp方程即:如果i,j从0开始免不了要多加几个判断。这里试想,如果我们在s,t这两个字符串最前面加上一个相同的字符,而且该字符不与任何一个在t中存在的字符相同。那么最后的答案相同吗,答案是相同的。(这里虽然一笔带过但却是最值得细细思考的)又盗图了。。当然我觉得把首个字符替换成$符号理解起来更好。把第一个字符$当作一个有效字符来看这个问题,一切都顺理成章了。...
2020-06-26 13:36:13
176
原创 Arrays.asList()方法的坑
在全排列中,可以使用一个数组重复使用,这样不用一个list反复增减最后一个节点。但是答案是需要转成list的,于是就出错了List<List<Integer>>res;int[]path;res.add(Arrays.asList(path)) //注意Arrays.asList返回的是tm的Arrays里的内部类,不是我们常用的那个。。。但是两个实现了同样的抽象类。这里是用错了,Arrays.asList(1,2,3)返回的值是可以被res.add()的。而
2020-06-24 15:31:30
261
原创 leetcode 4数之和
关键词:去重,双指针。这题的题解在leetcode很多,这里并不赘述,只是证明下为什么那样可以去重:也就是为什么要很多个类似的这一步;首先,从语义上讨论,我们比较一个数和它之前的数是不是相同,那么就遍历数组而言,第一个数是没有前一个数的for(int i=0;i<nums.length;i++){ if(nums[i]==nums[i-1] //很明显,从语义上就不对,我们第一个元素是没有上一个元素的。 System.out.println(i);.
2020-06-23 12:25:13
167
原创 java string缓存池
都说string name="zlz"是创建了两个对象,一个是缓存池里的,一个是堆里的,怎么看出来啊?直接用反射就得了呗。 public static void main(String[] args) throws NoSuchFieldException, IllegalAccessException { String name ="zlz"; String name2 = new String("zlz"); Field field = S
2020-06-22 20:24:02
260
原创 python反编译
背景:因为项目需要,使用了pyInstaller将项目打包成exe。由于系统重装时误操作导致格式化,不过之前给乙方发过一份exe文件用于测试。所以还有补救的空间。工具:exe反编译工具:pyinstxtractor.py:点击此处去下载hex16进制文件编辑工具:winhex在反编译之前一定要做好环境的配置,尤其是python的版本。这里有个技巧。就是看与exe文件同目录下的python**.dll这个动态链接库,我这里就是3.7.5版本的,还有很多地方有蛛丝马迹显示。python的版本
2020-05-18 21:09:05
1999
1
原创 idea,maven下载失败 could not transfer artifact org.apache.maven.plugins:maven-javadoc-plugin:pom
使用idea的童鞋可以在 idea安装目录下的bin目录下的idea.exe.vmoptions文件的最后增加一行,修改一次就行。这里的问题是https的问题-Dmaven.wagon.http.ssl.insecure=true -Dmaven.wagon.http.ssl.allowall=true -Dmaven.wagon.http.ssl.ignore.validity.dates=true...
2020-05-14 19:43:50
2113
原创 牛客网--字符串的排列
回溯法import java.util.*;public class Solution { public ArrayList<String> Permutation(String str) { ArrayList<String>res = new ArrayList<>(); char[]chars ...
2020-03-18 14:24:22
207
原创 剑指offer---二叉树中和为某一值的路径集合
import java.util.ArrayList;import java.util.Collections;/**public class TreeNode { int val = 0; TreeNode left = null; TreeNode right = null; public TreeNode(int val) { thi...
2020-03-18 00:35:10
126
原创 mysql知识点
1. 在使用join时,on和where条件的区别如下:1、on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。 2、where条件是在临时表生成好后,再对临时表进行过滤的条件。这时已经没有left join的含义(必须返回左边表的记录)了,条件不为真的就全部过滤掉。...
2020-03-16 10:20:19
111
原创 mysql(8.0.18版本)的各种变量
1. select的选项必须都是被group by或者having后面的聚合函数所涉及的字段,而不可包含其他字段,这里涉及了sql_mode = only_full_group_by模式;可以通过命令行查看或更改该属性:查看sql_model参数命令: SELECT @@GLOBAL.sql_mode;SELECT @@SESSION.sql_mode; set sql_mod...
2020-03-16 10:14:46
566
原创 java---PriorityQueue
大家不要大顶堆小顶堆傻傻分不清,这里介绍一种非常好用的办法:(left,right)->left<right?-1:1;首先你以后写比较的时候固定顺序left,right(方向是不是从左到右)-1,1(在一维的坐标里也是从左到右的)(-1<1)然后如果是left<right,表示从左到右,和-1<1方向一致,方向一致就是小顶堆------递减排序...
2020-03-10 13:47:47
108
原创 关于透明图像的滤色处理要注意的几个点
首先,cv2.imread(img_path,cv2.IMREAD_UNCHANGED)返回的是RGBA,在滤色处理(C=1-(1-A)*(1-B))后一定要设置被处理部分的透明度,否则会出现意想不到的情况。左边是我想要的效果,而作宾是滤色处理后透明度没有改变的结果总结:对原理不熟悉会造成很多困难,所以基本功要扎实,知道自己操纵的是什么数据,知道操纵的原理,方可一往无前。...
2020-03-08 02:47:15
368
原创 位运算的技巧
1. 找到一个整数最后一位1的位置:int split = Xor&(Xor-1)^Xor; int split = Xor&~(Xor-1);
2020-03-04 14:44:38
289
原创 pycharm使用中的快乐与懵逼
1. 懵逼指数3颗星:cv2.imread()对于imread按住ctrl时无法识别,但是代码能跑。我切换了另一个环境的python解释器,发现可以识别了,再换回来,发现可以了。。。。...
2020-02-27 21:24:32
125
原创 office2016找不到 Internet 服务器或代理服务器 的问题
找到Internet选项然后:连接-局域网设置 里面,如果自动配置是 “使用自动配置脚本”,把它取消掉改成自动检测设置就行了。
2020-02-21 22:48:41
6002
1
原创 mysql8.0以上版本的修改root密码,navicate链接出现错误2059
首先会给你一个临时密码://如果打开了mysql服务要先关闭 :net stop mysqlmysqld --initialize --user=mysql --console然后打开mysql服务并用刚刚得到的临时密码登陆(这个密码仅可登陆一次):net start mysqlmysql -u root -pmysql>输入临时密码然后就到了关键的地方了:(n...
2019-12-25 21:55:25
191
原创 程序编写中易错的case
1. A严格依赖于B,但是B之后又改变了,这时候再用A,就会出现一些意想不到的错误。。。比如数组越界等,所以一点要确保中间B没有任何变化。#找 万 所在的位置index_of_wan = money.find('万')#将money截取money = money[money.find('亿'):]#注意这个时候money已经改变了导致index_of_wan已经失效money[...
2019-12-20 13:46:32
148
原创 java中hashset真的不排序吗?
测试代码如下。。Set<Integer> hashSet=new HashSet<>();int []array = {1,10,11,34,5,7,2,9,4,6,6,3,6,3,34,54,23,53};for(int i=0;i<array.length;i++){ hashSet.add(array[i]); System.out....
2019-12-17 20:52:05
1128
原创 java函数中引用的理解
栈存放基本类型的变量、引用;堆存放对象。1. 首先我们要分清楚对象和引用的概念,这很重要;class Person{ String name; Person(){ } Person(String name){ this.name = name; } public static void changeName(Person person,String new...
2019-12-16 17:19:31
227
转载 java中函数值还是传引用?
java的值传递和引用传递在面试中一般都会都被涉及到,今天我们就来聊聊这个问题,首先我们必须认识到这个问题一般是相对函数而言的,也就是java中的方法参数,那么我们先来回顾一...
2019-12-16 15:30:11
135
原创 LRU用HashMap,双向链表的实现
leetcode的题解已经很完美了,这里记录下关于底下几个comments的问题:来源:力扣(LeetCode)这段代码很好。。import java.util.Hashtable;public class LRUCache { class DLinkedNode { int key; int value; DLinkedNode prev; ...
2019-12-10 19:41:57
423
原创 LinkedHashMap,accessOrder属性,removeEldestEntry方法
1. 对于accessOrder = false,表示根据插入的顺序来排序,就是先进先出。。对于accessOrder = true,其实不能光说是根据访问顺序来排序,而是:首先根据访问顺序排序,在访问次数相同情况下,根据插入顺序排序。//accessOrder(访问顺序): true:访问顺序,false:插入顺序//(默认构造函数中该参数默认为fasle)lhm = ...
2019-12-10 17:22:26
672
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人