- 博客(8)
- 资源 (4)
- 收藏
- 关注
原创 Java中<? super T>和List<? extends T>的区别
Java中<? super T>和List<? extends T>的区别<? extends T>下面通配符声明List<? extends Number> foo3的赋值式是合法的:List<? extends Number> foo3 = new ArrayList<Number>(); // Number "extends" Number (in this context)List<? extends Numbe
2020-09-25 11:47:54 696
原创 《剑指Offer》23:链表中环的入口节点
题目若一个链表中包含环,如何找出的入口结点?如下图链表中,环的入口节点的节点3。分析一快(移两节点)一慢(移一节点)两指针判断链表是否存在环。算出环有几个节点(上一步的两指针可知是在环中,让慢指针停止遍历,让快指针改为一节点一节点然后两指针一动一静的计算出环有多少个节点)。重置两指针指向链头,一指针移动2. 步骤得出n,然后两指针一起移动。当两指针相遇,此时它们指向的环的入口结点放码import com.lun.util.SinglyLinkedList.ListNode;publi
2020-09-25 00:21:52 119
原创 《剑指Offer》38:字符串的排列
题目输入一个字符串,打印该字符中字符的所有排列。例如,输入字符串abc,则打印出由字符a、b、c所能排列出来的所有字符串有abc、acb、bac、bca、cab、cba分析把一个字符串看成由两部分组成:第一部分是它的第一个字符;第二部分是后面的所有字符。求整个字符串的排列,可以看成两步:求所有可能出现在第一位置,即把第一个字符和后面所有的字符交换。固定第一个字符,求后面所有的排列(递归套用,将后面所有字符分成两部分:后面字符的第一个字符,以及这个字符之后的所有字符,回到步骤1。递归结束条件
2020-09-23 10:55:02 123
原创 《剑指Offer》37:序列化二叉树
题目请实现两个函数,分别用来序列化和反序列化二叉树。分析我们清楚可以通过前序遍历序列和中序遍历序列创造出一棵二叉树。因此,我们可以先把一棵二叉树序列化成一个前序遍历序列和一个中序遍历序列,然后在反序列化时通过这两种序列还原二叉树。但是,该方法有两个缺点:该方法要求二叉树中不能有数值重复的节点只有当两个序列中所有数据读出来才能开始序列化。如果两个遍历序列的数据是从一个流里读出来的,那么可能需要等待较长时间。实际上,如果二叉树的序列化是从根节点开始的,那么相应的反序列化在根节点的数值读出来的
2020-09-23 10:43:30 131
原创 《剑指Offer》60:n个骰子的点数
题目把n个骰子扔在地上,所有骰子朝上一面的点数之和为S。输入n,打印出S的所有可能的值出现的概率。分析直接法假设骰子有face面,有n个骰子,那么总排列数就有facen个。(例如,有3个6面骰子,那么其总排列数为63=216个)。所有骰子的和最小值为n(假设骰子最小值为1),而和最大值为n * face(例如,有3个6面骰子,那么和最大值为18), 那么就有 (n * face - n + 1)个可能和值,那么新建长度为(n * face - n + 1)的一维数组进行统计不同S出现的次数。然后骰
2020-09-22 15:12:26 196
原创 《剑指Offer》36:二叉搜索树与双向链表
题目输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表。要求不能创建任何新的节点,只能调整树中节点指针的指向。比如,输入下图中的二叉搜索树,输出转换之后的排序双向链表。二叉树节点的定义如下:public static class TreeNode { public int val; public TreeNode left; public TreeNode right; public TreeNode(int x) { val = x; }}分析众所周知,中序遍历二叉搜索树会
2020-09-20 10:17:54 209
原创 如何优雅互换Map键与值
一般方法//map must be a bijection in order for this to work properlypublic static <K,V> HashMap<V,K> reverse(Map<K,V> map) { HashMap<V,K> rev = new HashMap<V, K>(); for(Map.Entry<K,V> entry : map.entrySet())
2020-09-19 11:10:10 4298
原创 LeetCode - Easy - 197. Rising Temperature
Descriptionhttps://leetcode.com/problems/rising-temperature/Table: Weather+---------------+---------+| Column Name | Type |+---------------+---------+| id | int || recordDate | date || temperature | int |+----------
2020-09-19 10:18:47 230
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人