10 2019 档案
摘要://接上上一篇博客,继续这个题目,现在数组中会有重复元素,情况将会变得十分复杂,比如说1,1,1,1,1 或者1,1,3,1再来 3,3,3,1,1,1,3,这些都是可以的,都是符合题目要求的,如果有疑问,自己想想。那么这么复杂怎么找最大点呢?我找不到,我去看了我牛客网当时的思路,当时找的是最小值,
阅读全文
摘要://感想: 1.对于这两题,我真的是做到吐,这篇博客本来是昨晚准备写的,但是对于这个第二题,我真的做到头痛,实在是太尼玛的吐血了,主要是我也是头铁,非要找到那个分界点。 2.其实之前在牛客网上做过非常类似的题目,当时就做的特别痛苦,后来做完也没总结,导致现在做又不知道思路了,不过好歹留下了代码,再次
阅读全文
摘要:给定两个二进制字符串,返回他们的和(用二进制表示)。输入为非空字符串且只包含数字 1 和 0。示例 1:输入: a = "11", b = "1"输出: "100"//感想:今天做了好像有三题吧,现在基本都跳过hard了,不太愿意去想,还看了并发的一些东西,看的真让人头大,全是一些源码的东西,还有几
阅读全文
摘要:给定一个非负整数数组,你最初位于数组的第一个位置。数组中的每个元素代表你在该位置可以跳跃的最大长度。判断你是否能够到达最后一个位置。输入: [2,3,1,1,4]输出: true解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一个位置。//感想:一开始
阅读全文
摘要:学了cowarraylist之后,有些不明白的地方, 1.我们为什么要用写时复制的策略呢?,这样每次不是都要复制吗,性能不是很低吗?直接在元素组上扩容不好吗?而且读的时候数据一致性也保证不了,如果只是对一个数组进行操作,那么应该是可以保证的。 2.一些理解:我们为什么用写时复制呢?因为之前的同步容器
阅读全文
摘要://感想:1.这道题写了蛮久的,之前在牛客上也刷过,我记得还差不多a了,思路当时基本写出来了,结果这次遇见了,写了好久都没搞定,现在也算是 a了,遇见这种需要仔细考虑边界条件。 2.这边主要是这个循环次数的计算,我上次好像根本就没有算这个东西,就把这题解出来了, 这个循环次数等于time=min(m
阅读全文
摘要:昨天学到了伪共享,基本理解了大致的意思: 1,数据变量存储的基本单位是缓存行,有计算机操作系统基础的都知道,现代的计算机为了解决cpu和主存之间的速度差异(主要是cpu比主存的与运行速度快太多了),提出了cache的概念,也就是缓存,一般会有多级缓存,这个不多说。但是现在的这些缓存行的大小一般都是蛮
阅读全文
摘要:以下内容摘自:Java并发编程之美 加锁和释放锁的语义:当获取锁以后会清空锁块内本地内存中将会被用到的共享变量,在使用这些共享变量的时从主内存进行加载,在释放锁时将本地内存中修改的 共享变量刷新到主内存中。 进入synchronized块的内存语义是把在synchronized块内使用到的变量从线程
阅读全文
摘要:在学习这个InheritableThreadLocal类的时候,我对于有个地方一直没有理解,我发现了盲点。 在这个地方,我的思想出现了问题,对于这个currentThread得到了当前线程,这里没有问题,然后设置this.inheritableThreadLocals= ThreadLocal.cr
阅读全文
摘要:给定一个整数数组 nums ,找到一个具有最大和的连续子数组(子数组最少包含一个元素),返回其最大和。 示例:
阅读全文
摘要:实现 pow(x, n) ,即计算 x 的 n 次幂函数。 //感想:自己也是菜的不行,我竟然把这个当成那种需要位运算的那种题解求什么乘法这类的题目,大错特错。 还是看了答案,发现自己好像刷过这道题,或者是非常相似的一道,看完我就感觉特别熟悉。。。 //题解:快速幂,对于一个pow(x,n)来说求x
阅读全文
摘要:给定一个 n × n 的二维矩阵表示一个图像。将图像顺时针旋转 90 度。说明:你必须在原地旋转图像,这意味着你需要直接修改输入的二维矩阵。请不要使用另一个矩阵来旋转图像。给定 matrix = [ [1,2,3], [4,5,6], [7,8,9]],原地旋转输入矩阵,使其变为:[ [7,4,1]
阅读全文
摘要:leetcode第41题,缺失的第一个正数 对于这道题,利用的是桶排序的思想,桶排序也就是利用数组的下标和值对应的关系,也就是说下标为0的索引对应的值应该就是0,依次类推n对应n 但是这只是一种对应关系,也就是说我们不仅仅只局限于这种关系,只要有合理的对应关系即可,那么这题要求从1开始第一个没有的正
阅读全文
摘要:/**父类*/public class SynchronizedDemo1 implements Runnable { @Override public void run() { try { method(); } catch (InterruptedException e) { e.printSt
阅读全文