- 博客(5)
- 收藏
- 关注
原创 Java-- Maps
Java–MapsHashMap这是Java里最为常用的一种map结构,散列表,是根据hashcode存储<key,value>键值对,并没有顺序。一般刷题是主要允许用了其O(1)的查找速度。其内部实现结构:实际上是一个链表的数组。HashMap最多只允许一条记录的键为Null;允许多条记录的值为 Null;HashMap不支持线程的同步,即任一时刻可以有多个线程同时写Hash...
2019-04-10 07:21:26
2739
原创 Java数据结构整理------ArrayList&LinkedList
Java数据结构整理------List最近在准备面试题,就想顺便在这里复习一下。List 一个线性表,在地址空间上非连续对于插入新节点,直接插在表头即可,时间复杂度是O(1)对于删除节点,如果一直节点的位置,只需要将前面节点的指针直接指向该删除节点的next,时间复杂度O(1)。对于查找来说,链表的查找需要遍历链表所有节点,时间复杂度O(n).在Java中,我们在创建一个链表的时候,...
2019-04-07 22:50:18
180
原创 Java pass by reference for Object(LeetCode 39)
掉入Java 按引用传递的坑今天在刷LeetCode的题的时候,刷到了LeetCode 39,题目描述如下:Given a set of candidate numbers (candidates) (without duplicates) and a target number (target), find all unique combinations in candidates wher...
2019-04-07 08:28:01
174
原创 LeetCode 950. Reveal Cards In Increasing Order
这道题需要从结果回推的方式来思考解决方案,假设现有一个序列[0,1,2,3,4,…], 对这个序列进行如题的操作将变成 [0,2,4,…]。那么,如果需要让结果有序,我们可以按照上面的结果来放置元素,0号位置放置最小的元素,2号位置放置第二小的元素。因为题目中存在从前插入和从后插入的过程,所以用双端队列较为简单。C++ 代码如下:vector<int> deckRevealed...
2018-12-29 23:54:06
198
原创 LeetCode 872 C++
LeetCode 872: Leaf-Similar Trees C++这道题主要考察的是二叉树的遍历过程。这里我选择中序遍历来尝试访问所有的叶子节点。通过vector来存储访问的叶子节点。/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; ...
2018-10-20 22:21:48
336
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人