文章库ARTICLE COLUMN

  • Graph: Topological Sort

    Graph: Topological Sort

    Graph: Topological Sort 利用和detect cycle类似的思路, 用dfs + recursion解决。并且一定时一个有向图。 Stack stack = new Stack(); // 0:unvisit, 1:visited, 2:visiting public boolean topologicalSort(Node node) { if(node.stat...

    ShevaKuilinShevaKuilin 评论0 收藏0
  • 系统设计basic

    系统设计basic

    系统设计Basic 常用数据存储

    Dongjie_LiuDongjie_Liu 评论0 收藏0
  • LeetCode[72] Edit Distance

    LeetCode[72] Edit Distance

    摘要:复杂度思路考虑用二维来表示变换的情况。如果两个字符串中的字符相等,那么如果两个字符串中的字符不相等,那么考虑不同的情况表示的是,从字符串到的位置转换到字符串到的位置,所需要的最少步数。 LeetCode[72] Edit Distance Given two words word...

    call_me_Rcall_me_R 评论0 收藏0
  • 【Snapchat 电面面经】多任务单线程时间打印Parse Log

    【Snapchat 电面面经】多任务单线程时间打印Parse Log

    摘要:给出了这个例子还给出了实际情况中,这种多线程可能出现的场景。文章的发布时间应该是有记录的,那么至少现在这个时候我还基本处于完全不懂操作系统的状态,多线程也只是的看了几个视频。 题目内容 首先,这是一篇马后炮。这题在面试过程中,面试官首...

    sf190404sf190404 评论0 收藏0
  • ArrayList和Vector的区别

    ArrayList和Vector的区别

    摘要:扩容不同内部属性不同,这可能是导致扩容方式不同的原因所在。有两个属性,存储数据的数组,和存储记录数目的。将上面生成的新数组长度与传递的参数长度作比较,较大者为最终的新长度。 相同点: 1、ArrayList和Vector都是继承了相同的父类和实现了相...

    wawor4827wawor4827 评论0 收藏0
  • Kotlin + Spring Boot服务端开发

    Kotlin + Spring Boot服务端开发

    摘要:是什么著名厂商开发的基于的静态类型编程语言,声称。语法近似和,且已活跃在开发领域,被誉为平台的。各有千秋,我更认同改写字节码。的作用是防止敏感字段被泄露到中,的作用是软删除数据不可见,但没有真的删除。 Kotlin是什么? 著名IDE厂商JetBra...

    e10101e10101 评论0 收藏0
  • LeetCode[191] Number of 1 Bits

    LeetCode[191] Number of 1 Bits

    摘要:依次移位复杂度思路依次移动位数进行计算。代码利用性质复杂度,思路代码 LeetCode[191] Number of 1 Bits Write a function that takes an unsigned integer and returns the number of ’1" bits it has (also known as the Hamming weigh...

    ScliangScliang 评论0 收藏0
  • LeetCode[337] House Robber III

    LeetCode[337] House Robber III

    摘要:复杂度思路对于每一个位置来说,考虑两种情况分别对和再进行计算。用对已经计算过的进行保留,避免重复计算。 LeetCode[337] House Robber III The thief has found himself a new place for his thievery again. There is only one entrance to this...

    Dr_NooooDr_Noooo 评论0 收藏0
  • 线程冲突 - Thread interference

    线程冲突 - Thread interference

    摘要:解决这两种问题的方法是线程同步。在介绍线程同步之前,先来了解一下这两个问题。这篇文章先介绍第一个问题线程冲突。这是一种可能的结果,也可能线程的结果被覆盖或没有交叠,不发生错误线程冲突的结果不可预料,很难被发现并且修复 线程通信,主要通...

    lncwwnlncwwn 评论0 收藏0
  • 内存一致性错误 - Memory Consistency Errors

    内存一致性错误 - Memory Consistency Errors

    摘要:解决这两种问题的方法是线程同步。在介绍线程同步之前,先来了解一下这两个问题。这篇文章介绍第二个问题内存一致性错误。 线程通信,主要通过共享访问进程资源。这种通信方式非常高效,但存在两个问题:线程冲突(thread interference) , 内存一致...

    baiybaiy 评论0 收藏0
  • 线程同步之 Synchronized Methods

    线程同步之 Synchronized Methods

    摘要:这保证了该对象的所有状态的改变,对于所有线程是可见的为构造函数添加是语法错误。 Synchronized Methods 线程同步 提供了两种策略 Synchronized Methods Synchronized Statements 本文介绍 Synchronized Methods 一个例子 使用 synchronized 关键...

    sourcenodesourcenode 评论0 收藏0
  • Guava-Optional(译)

    Guava-Optional(译)

    摘要:创建一个指定引用的,若引用为则表示引用缺失,并返回一个。返回包含的实例,该实例必须存在,如果不存在将会抛出异常。说明有三个方法没有作解释,主要是担心相关知识不理解,容易做出错误的翻译,望请谅解 原文地址译者 Guava Optional Class Option...

    nifhlheimrnifhlheimr 评论0 收藏0
  • JAVA加密算法(5)- 数字签名算法(RSA、DSA)

    JAVA加密算法(5)- 数字签名算法(RSA、DSA)

    摘要:数字签名流程生成签名对源文件的数字摘要,使用私钥加密,生成加密数字摘要验证签名对加密数字摘要通过公钥进行解密,生成数字摘要,比较数字摘要与数字摘要,结果相同则签名验证通过。 数字签名流程 (1)生成签名:对源文件的「数字摘要」,使用私钥...

    RichardXGRichardXG 评论0 收藏0
  • Leetcode[368] Largest Divisible Subset

    Leetcode[368] Largest Divisible Subset

    摘要:让数组从小到大排序。因为如果一个数能被加到这个中的话,说明这个数能被这个中的最大的数整除。同样可以用一个数组来记录之前搜索过的。,表示的是我们搜索的路径是从到。初始化这个位置是头结点。说明是,并没有是当前最大的里的最大值。 LeetCode[3...

    springDevBirdspringDevBird 评论0 收藏0
  • 用Quartz实现工作流

    用Quartz实现工作流

    摘要:也有,触发点和相关,和我们的需求关系不大,暂忽略。实现为每个算法任务创建一个,任务失败不能启动后续任务,所以在运行失败的情况下,需要把启动的删除掉。需要自己在中实现多个依赖是否完成的检查。后续主线程的任务就是检查工作流是否已经完成。 ...

    ApolloApollo 评论0 收藏0
  • Netty 源码分析之 二 贯穿Netty 的大动脉 ── ChannelPipeline (一)

    Netty 源码分析之 二 贯穿Netty 的大动脉 ── ChannelPipeline (一)

    摘要:目录源码之下无秘密做最好的源码分析教程源码分析之番外篇的前生今世的前生今世之一简介的前生今世之二小结的前生今世之三详解的前生今世之四详解源码分析之零磨刀不误砍柴工源码分析环境搭建源码分析之一揭开神秘的红盖头源码分析之一揭开神秘的红盖头...

    tunnytunny 评论0 收藏0
  • Netty 源码分析之 二 贯穿Netty 的大动脉 ── ChannelPipeline (二)

    Netty 源码分析之 二 贯穿Netty 的大动脉 ── ChannelPipeline (二)

    摘要:目录源码之下无秘密做最好的源码分析教程源码分析之番外篇的前生今世的前生今世之一简介的前生今世之二小结的前生今世之三详解的前生今世之四详解源码分析之零磨刀不误砍柴工源码分析环境搭建源码分析之一揭开神秘的红盖头源码分析之一揭开神秘的红盖头...

    kamushin233kamushin233 评论0 收藏0
  • GPUImage 图片滤镜

    GPUImage 图片滤镜

    public class ActivityABC extends Activity implements OnClickListener { mGPUImage = new GPUImage(this); mGPUImage.setGLSurfaceView((GLSurfaceView) findViewById(R.id.surfaceView)); }

    luoyibuluoyibu 评论0 收藏0
  • 使用guava对list进行分割

    使用guava对list进行分割

    实例 List users = userService.findAll(); //按每50个一组分割 List parts = Lists.partition(users, 50); parts.stream().forEach(list -> { process(list); }); doc google-guava-collectionutilities

    TecodeTecode 评论0 收藏0
  • LeetCode[397] Integer Replacement

    LeetCode[397] Integer Replacement

    摘要:复杂度思路利用位的操作。如果一个数是奇数,那么末位的位一定是。对于偶数,操作是直接除以。对于奇数的操作如果倒数第二位是,那么的操作比的操作能消掉更多的。还有一个的地方是,为了防止越界,可以将先转换成。 LeetCode[397] Integer Replacemen...

    DrinkeyDrinkey 评论0 收藏0
  • Android 研发工程师图书一览(2016年版)

    Android 研发工程师图书一览(2016年版)

    摘要:番茄工作法简约而不简单,本书亦然。在番茄工作法一个个短短的分钟内,你收获的不仅仅是效率,还会有意想不到的成就感。 @author ASCE1885的 Github 简书 微博 CSDN 知乎本文由于潜在的商业目的,不开放全文转载许可,谢谢! showImg("/img/remote/14...

    MadPeckerMadPecker 评论0 收藏0
  • 7.1、使用Commons Fileupload上传文件

    7.1、使用Commons Fileupload上传文件

    摘要:你可以通过在应用程序上下文中添加一个解析器来启用的处理。当的检测到一个请求时,它会激活你声明好的解析器,然后把这个解析器转交给请求。解析器会把当前的扭曲为一个支持文件上传的。首先,创建一个带有的表单,这样用户就可以通过这个表单上传文件...

    suosuopuosuosuopuo 评论0 收藏0
  • LeetCode[233] Number of Digit One

    LeetCode[233] Number of Digit One

    摘要:递归复杂度思路每次将一个数拆分成两部分考虑,并考虑当前最高是不是比如,将数拆分成,和,这两部分分别计算。每次抹去高位,观察重复情况。代码代表位数,代表最高的值除了高位的剩余部分 LeetCode[23] Number of Digit One Given an integer n, co...

    v1v1 评论0 收藏0
  • y-a-b-e

    y-a-b-e

    摘要:算法链表总结翻转链表二叉树数搜索区间矩阵走法,数组矩阵字符串一个数组能否分成两堆数,使两堆数的和相等先求总和,若有一堆数,和为,那么就没问题。 算法 链表 【LC总结】翻转链表 Swap in Pairs, Reverse in k-Group, Reverse LinkedList###Rever...

    Terry_TaiTerry_Tai 评论0 收藏0
  • java 数据分页

    java 数据分页

    分页逻辑 import lombok.Data; /** * User eric * Date 15/10/18 下午3:55 * Email yq@aso.ren */ @Data public class PageHelper { private int pageSize; private int totalPage; private int curren...

    张汉庆张汉庆 评论0 收藏0

热门文章

<