Tal.Ben

迷茫了太久,想往深了做几件事

排序:
默认
按更新时间
按访问量

Collections 族系详解 —— Iterator,Iterable,Spliterator

Iterator:迭代者,Iterable:能迭代的。 Iterator //@since 1.2 public interface Iterator<E> { boolean hasNext(); E next(); ...

2018-07-20 14:34:48

阅读数:17

评论数:0

Map族系——HashMap

首先我想实现一个map存储key-value,很多key-value,并且map是可以修改的。(不可以修改的参考:ImmutableCollections和Map族系详解 —— Map)那么我除了要implement Map之外,还得想办法存储key-value,并且一定要public put方法...

2018-07-19 10:44:51

阅读数:14

评论数:0

Map族系 —— AbstractMap

这个class提供了Interface Map的一个最基本的实现。可以说在defeult和static方法能在interface 实现之前,为了减少要implement这个interface要花费的功夫,可以实现这个类。其实Java8,9,10之后添加的方法都在Map 中直接添加了,所以这个cla...

2018-07-17 11:43:35

阅读数:16

评论数:0

Map族系详解 —— Map

本文以Java10为背景,Java8到Java10只是增加了一些方法,总体结构没变。 转载请注明: TalBen 在我们解释HashMap之前,先看看HashMap的结构: HashMap实现Map,继承AbstractMap。 先解释一下Map Interface。...

2018-07-17 10:58:00

阅读数:18

评论数:0

Collections 族系详解 —— ImmutableCollections

ImmutableCollections即不可变即,最初出现在Google 的Guava 中,在jdk的Java9中被引入。 JDK9,10中的ImmutableCollections只是一个存放不可变集合的一个容器,不是一个公共的API。 先看ImmutableCollections的设计图...

2018-07-17 10:22:38

阅读数:27

评论数:0

Java Thread 通信

单线程通信 wait & notify wait()和notify()都是Object的方法。wait方法会使当前线程进入阻塞,知道有其它线程调用了notify()或notifyAll(),或者阻塞时间到了。 wait(),notify必须拥有该对象...

2018-07-10 09:30:27

阅读数:10

评论数:0

Java Thread synchronized

synchronized关键字提供了一种锁机制,能确保共享变量的互斥访问,防止数据不一致的问题出现。 synchronized其实是获取synchronized修饰的monitor锁。monitor锁包括monitor enter和monitor exit两个JVM指令。将java编译成汇编的时...

2018-07-09 15:47:28

阅读数:13

评论数:0

Java Thread

Java多线程 Java多线程只有一种构造方式,即创建Thread对象。 实现线程的执行方法有两种方式: 1. 继承Thread,重写Thread的run()方法。 2. 实现Runnable 接口的run()方法。 线程命名 默认命名 Java源码 public Th...

2018-07-09 14:21:06

阅读数:10

评论数:0

LeetCode ----- Plus One

Given a non-empty array of digits representing a non-negative integer, plus one to the integer. The digits are stored such that the most significant...

2018-06-22 17:11:54

阅读数:10

评论数:0

LeetCode ---- 逆波兰表达式求值

根据逆波兰表示法,求表达式的值。 有效的运算符包括 +, -, *, / 。每个运算对象可以是整数,也可以是另一个逆波兰表达式。 说明: 整数除法只保留整数部分。 给定逆波兰表达式总是有效的。换句话说,表达式总会得出有效数值且不存在除数为 0 的情况。 示例 1: 输入: [“2...

2018-06-16 22:31:02

阅读数:37

评论数:0

位运算

序 位运算在程序设计中非常重要,特别是有复杂运算的时候,位计算的高效率优势发挥地淋漓尽致。BigDecimal底层加减乘除运算都是运用了位运算,如果在大学区间有学到位运算符,应该重视起来,不要像作者君这样,现在要去捡起来。 以下内容都是假定各位都知道位运算的情况下。 加法 先看一道题 ...

2018-06-05 17:09:21

阅读数:47

评论数:0

LeetCode --- 3Sum

Given an array nums of n integers, are there elements a, b, c in nums such that a + b + c = 0? Find all unique triplets in the array which gives the ...

2018-06-05 09:14:27

阅读数:30

评论数:0

LeetCode --- Two Sum

Given an array of integers, return indices of the two numbers such that they add up to a specific target. You may assume that each input would have ...

2018-06-04 15:03:53

阅读数:14

评论数:0

Git --- 个人总结

1、git config –global user.name ‘Your name’ git config –global user.email ‘Your email’ 2、git config –list 3、git init命令把这个目录变成Git可以管理的仓库 4、g...

2018-05-28 19:44:59

阅读数:29

评论数:0

LeetCode --- 阶乘后的零

给定一个整数 n,返回 n! 结果尾数中零的数量。 示例 1: 输入: 3 输出: 0 解释: 3! = 6, 尾数中没有零。 示例 2: 输入: 5 输出: 1 解释: 5! = 120, 尾数中有 1 个零. 说明: 你算法的时间复杂度应为 O(log n) 。 出现0的情...

2018-05-23 16:10:19

阅读数:65

评论数:0

LeetCode --- Excel表列序号

给定一个Excel表格中的列名称,返回其相应的列序号。 例如, A -> 1 B -> 2 C -> 3 ... Z -> 26 AA -> 27 AB -> 2...

2018-05-23 15:37:48

阅读数:70

评论数:0

LeetCode --- 求众数

给定一个大小为 n 的数组,找到其中的众数。众数是指在数组中出现次数大于 ⌊ n/2 ⌋ 的元素。 你可以假设数组是非空的,并且给定的数组总是存在众数。 示例 1: 输入: [3,2,3] 输出: 3 示例 2: 输入: [2,2,1,1,1,2,2] 输出: 2 public...

2018-05-23 14:04:03

阅读数:44

评论数:0

LeetCode --- 寻找峰值

峰值元素是指其值大于左右相邻值的元素。 给定一个输入数组 nums,其中 nums[i] ≠ nums[i+1],找到峰值元素并返回其索引。 数组可能包含多个峰值,在这种情况下,返回任何一个峰值所在位置即可。 你可以假设 nums[-1] = nums[n] = -∞。 示例 1: 输入...

2018-05-23 13:03:34

阅读数:95

评论数:0

LeetCode ---- 相交链表

编写一个程序,找到两个单链表相交的起始节点。 例如,下面的两个链表: 在节点 c1 开始相交。 注意: 如果两个链表没有交点,返回 null. 在返回结果后,两个链表仍须保持原有的结构。 可假定整个链表结构中没有循环。 程序尽量满足 O(n) 时间复杂度,且仅用...

2018-05-23 11:39:46

阅读数:68

评论数:0

LeetCode --- ListNode 工具加强

增加两个链表的方法,一个可以根据数组构造对象,一个可以比较两个链表。 public class ListNode { int val; ListNode next; ListNode(int x) { val = x; next = nu...

2018-05-22 21:14:25

阅读数:32

评论数:0

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