![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
leetcode-java
文章平均质量分 50
神一般的路过
python
展开
-
莫里斯遍历Morris Traversal
都说莫里斯遍历高大上,其实不然,莫里斯遍历根本上是利用叶子结点的right指针实现了在遍历到更深的层数的时候可以回溯到上一层,所以我们可以看到right指针指向的其实就是上一层的父亲结点。由此,莫里斯遍历神秘的面纱就被揭开了。...原创 2020-08-02 18:08:46 · 250 阅读 · 0 评论 -
2020年 Moore majority vote algorithm 摩尔投票法知多少
第一眼看到这个题目,想到的是使用Map来统计出现频次,然后遍历找出频次大于n/2的元素。class Solution { public int majorityElement(int[] nums) { Map<Integer, Integer> map = new HashMap<>(); for(Integer item: n...原创 2020-03-13 18:38:23 · 139 阅读 · 0 评论 -
[剑指 offer]面试题40. 最小的k个数
class Solution { private int size; private int[] arr; //把输入的数组堆化 private void heapify(int[] arr){ this.arr = new int[arr.length]; for(int i = 0; i < arr.length; i...原创 2020-03-04 22:41:04 · 90 阅读 · 0 评论 -
leetcode23.合并K个排序链表[困难]
采用分治算法每两个合并之后的链表继续合并/* * @lc app=leetcode.cn id=23 lang=java * * [23] 合并K个排序链表 * * https://leetcode-cn.com/problems/merge-k-sorted-lists/description/ * * algorithms * Hard (48.23%) * Likes:...原创 2020-03-04 22:01:33 · 135 阅读 · 0 评论 -
Add Two Numbers
leetcodeAdd Two Numbers 级别 medium写了简单的链表合并算法通俗易懂对题目的理解为两个方面 1.合并节点值大于等于10时,需要对后面节点进一位,进位还可能后导致的再进位如:1+9等 2.这里采用的是用l1节点就地合并,所以有两种情况l1.length>l2.length;l2到达尽头后需要后续进一位时l1有可能连续进位,所以在初步合并后还需while自增 l1.l原创 2017-06-10 17:30:21 · 200 阅读 · 0 评论