03 2017 档案
摘要:1.题目 2.思路 方法一:常规方法。 方法二:给面试官惊喜的解法。 3.java代码 方法一代码: 方法二代码:
阅读全文
摘要:1.题目 2.思路 思路和LeetCode105类似,见上篇。 3.java代码
阅读全文
摘要:1.题目 2.思路 3.java代码
阅读全文
摘要:1.题目 2.思路 3.java代码
阅读全文
摘要:1.题目描述 2.思路 思路简单,这里用一个图来举例说明: 3.java代码
阅读全文
摘要:貌似有不少人苦恼eclipse中文字体大小修改问题,默认的eclipse中文字体很小,和英文字体大小完全不在一个调子上,因为默认的eclipse juno中英文字体是Consolas,字体大小是10,但是大家会发现,如果代码中有中文,那中文的字体会比英文的字体小很多,如下图: 明显的,默认的ecli
阅读全文
摘要:1.题目描述: 2.解题思路: 题意:求一个字符串的最长回文子串。 方法一:中心扩展法。遍历字符串的每一个字符,如果存在回文子串,那么中心是某一个字符(奇数)或两个字符的空隙(偶数),然后分两种情况(奇数或偶数)向两边扩展。本文主要介绍这种方法。 因为回文字符串是以中心轴对称的,所以如果我们从下标
阅读全文
摘要:1.题目描述: 2.解题思路: 本题是要堆一个链表进行排序,并且要求时间复杂度为 O(n log n)。很明显,要用到分治的思想,用二分法进行归并排序:找到链表的middle节点,然后递归对前半部分和后半部分分别进行归并排序,最后对两个已排好序的链表进行Merge。 分为三步: (1)找到中间结点,
阅读全文
摘要:1.题目描述: 2.解题思路: 题意:两个由整数构成的有序数组nums1和nums2,合并nums2到nums1,使之成为一个有序数组。注意,假设数组nums1有足够的空间存储nums1和nums2的所有元素(>=m+n)。 思路很简单,直接上代码。 3.Java代码: (1)普通 测试结果: (2
阅读全文
摘要:1.题目描述: 2.解题思路: 题意:将K个已经排序的链表合并成一个排序的链表,分析并描述所用算法的复杂度。 方法一:基于“二分”思想的归并排序。本文用非递归和递归两种方法实现。 (1)非递归:归并排序”(Merging Sort):将两个或两个以上的有序表组合成一个新的有序表,无论是顺序存储结构还
阅读全文
摘要:1.题目描述: 2.解题思路: 本题是要合并两个已经有序的单链表,思路很简单,有两种方法:非递归和递归。 3.Java代码: (1)非递归: 为方便操作,定义一个辅助的头节点,然后比较原来两个链表的头节点,将小的那一个加入到合并链表,最后,当其中一个链表为空时,直接将另一个链表接入到合并链表即可。
阅读全文

浙公网安备 33010602011771号