
Java
weixin_44580808
这个作者很懒,什么都没留下…
展开
-
Java-LinkedList与Pair
Java-LinkedList与PairLinkedListLinkedList也实现了List接口,相对于ArrayList来说,它们的最大区别在于底层数据结构不同,LinkedList的底层是一个双向链表,这也决定了它的最大优点,那就是对于数据的修改比ArrayList更加方便快捷。linkedList为双链表,维护的是一个first和last指针,而每个节点有item自身、prev和next两个节点来维护双链表的关系,add(E e):在链表后添加一个元素; 通用方法addFirst(原创 2020-07-21 23:07:43 · 357 阅读 · 0 评论 -
Java-Queue的使用方法
Java-Queue的使用方法定义Queue接口与List、Set同一级别,都是继承了Collection接口。LinkedList实现了Queue接口。我们平时使用的一些常见队列都是非阻塞队列,比如PriorityQueue、LinkedList(LinkedList是双向链表,它实现了Dequeue接口)队列是一种特殊的线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作。阻塞队列与非阻塞队列阻塞队列与普通队列的区别在于,当队列是空的时,从队列中获取元素的操作将会被阻塞,或原创 2020-07-21 23:06:05 · 1191 阅读 · 0 评论 -
LeetCode刷题笔记(8)二分查找+分治
LeetCode刷题笔记(8)二分查找+分治背景今天结束了二分查找的2个题目,开始了分治的第一道题目,分治的含义就是把复杂问题分解成简单问题,思路比较难,需要多练习。153、找出旋转数组中最小的元素解题思路:关键是找到变化点找到数组的中间元素 mid。如果中间元素 > 数组第一个元素,我们需要在 mid 右边搜索变化点。如果中间元素 < 数组第一个元素,我们需要在 mid 做边搜索变化点。当我们找到变化点时停止搜索,当以下条件满足任意一个即可:nums[mid] >原创 2020-07-16 23:42:20 · 202 阅读 · 0 评论 -
LeetCode刷题笔记(7)
LeetCode刷题笔记(7)背景今天是刷LeetCode的第七天,嗯,没有那么难受以及无法接受了,感觉还可以。今天结束了贪心算法的最后三道题目,明天就是二分法了。763、划分字母区间输入:S = “ababcbacadefegdehijhklij”输出:[9,7,8]解释:划分结果为 “ababcbaca”, “defegde”, “hijhklij”。每个字母最多出现在一个片段中。像 “ababcbacadefegde”, “hijhklij” 的划分是错误的,因为划分的片段数较少。原创 2020-07-11 23:20:11 · 235 阅读 · 0 评论 -
Java笔记-泛型和Hash
Java笔记-泛型和Hash泛型//泛型:针对利用继承来实现通用程序设计所产生的问题,泛型提供了更好的解决方案:类型参数。// 例如,ArrayList类用一个类型参数来指出元素的类型。//ArrayList stringValues=new ArrayList();// public class GenericType {// public static void main(String[] args) {// ArrayList stringVal原创 2020-07-03 23:49:17 · 227 阅读 · 0 评论 -
Java笔记-贪心算法
Java笔记-贪心算法贪心算法在允许最多删除一个字符的情况下,同样可以使用双指针,通过贪心算法实现。初始化两个指针 low 和 high 分别指向字符串的第一个字符和最后一个字符。每次判断两个指针指向的字符是否相同,如果相同,则更新指针,令 low = low + 1 和 high = high - 1,然后判断更新后的指针范围内的子串是否是回文字符串。如果两个指针指向的字符不同,则两个字符中必须有一个被删除,此时我们就分成两种情况:即删除左指针对应的字符,留下子串 s[low + 1],原创 2020-07-02 23:40:57 · 209 阅读 · 0 评论 -
LeetCode刷题笔记(2)
LeetCode刷题笔记(2)背景今天刷题刷了大概4道半,双指针的题目结束了,刚刚开始了快速选择的题目。141、给定一个链表,判断链表中是否有环//ListNode的数据格式 class ListNode { int val; ListNode next; ListNode(int x) { val = x; next = null; } } public class LinkedListCycl原创 2020-07-02 23:35:37 · 123 阅读 · 0 评论 -
Java随笔-HashSet和输入流
Java随笔-HashSet和输入流HashSet今天做题正好用到了HashSet那就顺便总结一下。定义HashSet是Java集合Set的一个实现类,Set是一个接口,其实现类除HashSet之外,还有TreeSet,并继承了Collection举例 private transient HashMap<E,Object> map; //默认构造器 public HashSet() { map = new HashMap<>();原创 2020-07-01 21:04:40 · 180 阅读 · 0 评论