随笔分类 -  Leetcode

摘要:暂时接触到LeetCode上与链表反转相关的题目一共有3道,在这篇博文里面总结一下。首先要讲一下我一开始思考的误区:链表的反转,不是改变节点的位置,而是改变每一个节点next指针的指向。 下面直接看看LeetCode上的题目: 206. Reverse Linked List 这是一道最基本的链表反 阅读全文
posted @ 2018-01-04 00:29 fengzw 阅读(2088) 评论(0) 推荐(0)
摘要:栈是先进后出,队列是先进后出,这里讨论一下两种数据结构之间的相互实现。 一.用两个栈实现队列 我们用一个栈来实现队列的进队操作(栈A),用另一个栈来实现队列的出队操作(栈B)。 1.入队列: 把元素放进栈A即可。假如栈A已满并且栈B为空,可以先把栈A中的所有元素先弹出并放入栈B中;假如栈B不为空,则 阅读全文
posted @ 2017-12-31 13:31 fengzw 阅读(904) 评论(0) 推荐(0)
摘要:这篇文章讨论一下与链表的环相关的题目,我目前遇到的一共有3种题目。 1.判断一个链表是否有环(LeetCode相关题目:https://leetcode.com/problems/linked-list-cycle/description/) 设置两个指针,初始值都指向头,一快一慢,slow每次前进 阅读全文
posted @ 2017-12-28 21:40 fengzw 阅读(411) 评论(0) 推荐(0)
摘要:原题地址:https://leetcode.com/problems/isomorphic-strings/description/ 题目: 解法一: 记录s[i]到t[i]的映射,遍历到与已有的映射不同时,return false。 同样地,记录t[i]到s[i]的映射,进行同样的操作即可。 解法 阅读全文
posted @ 2017-12-24 19:56 fengzw 阅读(194) 评论(0) 推荐(0)
摘要:二分查找 阅读全文
posted @ 2017-12-06 15:53 fengzw 阅读(265) 评论(0) 推荐(0)
摘要:LeetCode上面关于N皇后有两道题目:51 N-Queens:https://leetcode.com/problems/n-queens/description/ 52 N-Queens II:https://leetcode.com/problems/n-queens-ii/descript 阅读全文
posted @ 2017-12-04 19:03 fengzw 阅读(427) 评论(0) 推荐(0)
摘要:题目地址: https://leetcode.com/problems/longest-palindromic-substring/description/ 题目: 其实就是求一个字符串的最长回文子字符串。 解法: 我首先采取了暴力解法,不出意料地TLE了。这是超时的TLE解法: 这类题目一看就是用 阅读全文
posted @ 2017-12-03 17:24 fengzw 阅读(240) 评论(0) 推荐(0)
摘要:二叉搜索树的特殊性质 阅读全文
posted @ 2017-11-30 21:29 fengzw 阅读(175) 评论(0) 推荐(0)
摘要:这是一道很简单的题目,输出杨辉三角具体的某一行。很简单的一道题,但题目有要求只能用O(k)的额外空间,因此我们就不能把这个杨辉三角生成出来。 这是我原来的做法: 要只用O(k)的额外空间,就要从后面开始遍历起。这种节省空间的方法(把二维转为一维数组)在很多地方都用到了。 代码如下: 阅读全文
posted @ 2017-11-30 21:18 fengzw 阅读(178) 评论(0) 推荐(0)
摘要:最近在做LeetCode上面有关二叉树的题目,这篇博客仅用来记录这些题目的代码。 二叉树的题目,一般都是利用递归来解决的,因此这一类题目对理解递归很有帮助。 1.Symmetric Tree(https://leetcode.com/problems/symmetric-tree/descripti 阅读全文
posted @ 2017-11-28 20:04 fengzw 阅读(354) 评论(0) 推荐(0)
摘要:1.文字描述: 已知一颗二叉树的前序(后序)遍历序列和中序遍历序列,如何构建这棵二叉树? 以前序为例子: 前序遍历序列:ABCDEF 中序遍历序列:CBDAEF 前序遍历先访问根节点,因此前序遍历序列的第一个字母肯定就是根节点,即A是根节点;然后,由于中序遍历先访问左子树,再访问根节点,最后访问右子 阅读全文
posted @ 2017-11-24 18:56 fengzw 阅读(17503) 评论(1) 推荐(0)
摘要:算法期中考到一题关于拓扑序的题目,觉得很值得一写。 1.什么是拓扑序? 对一个有向无环图进行拓扑排序,假如图中存在一条从顶点A到顶点B的路径,则拓扑序中顶点A出现在顶点B的前面。要注意的是,这是对有向无环图而言的,假如图是有环的,拓扑序就无从谈起了。在这道题目中,已经假定了图是一个无环图。因此不需要 阅读全文
posted @ 2017-11-21 21:05 fengzw 阅读(6570) 评论(0) 推荐(0)
摘要:一.130 Surrounded Regions(https://leetcode.com/problems/surrounded-regions/description/) 题目: 解法: 这道题的意思是将所有被X包围的O都变为X(边缘的不算),我们可以维护一个队列,先把四周的O的位置放进队列中, 阅读全文
posted @ 2017-11-14 20:42 fengzw 阅读(2250) 评论(0) 推荐(0)
摘要:原题地址: https://leetcode.com/problems/3sum/description/ 题目: Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Fin 阅读全文
posted @ 2017-11-13 19:17 fengzw 阅读(272) 评论(0) 推荐(0)
摘要:原题地址: https://leetcode.com/problems/two-sum/description/ 题目: Given an array of integers, return indices of the two numbers such that they add up to a 阅读全文
posted @ 2017-11-13 17:15 fengzw 阅读(203) 评论(0) 推荐(0)
摘要:原题地址: https://leetcode.com/problems/partition-equal-subset-sum/description/ 题目: 题解: 这道题给定一个数组,求这个数组是否可以分成两个数组,使这两个数组各自的元素之和相等。 首先,假如这个数组本身的元素之和是一个奇数时, 阅读全文
posted @ 2017-10-30 18:40 fengzw 阅读(1185) 评论(0) 推荐(0)
摘要:原题地址: https://leetcode.com/problems/word-break/description/ 题目: Given a non-empty string s and a dictionary wordDict containing a list of non-empty wo 阅读全文
posted @ 2017-10-16 18:43 fengzw 阅读(284) 评论(0) 推荐(0)
摘要:原题地址: https://leetcode.com/problems/palindrome-partitioning/description/ 题目: Given a string s, partition s such that every substring of the partition 阅读全文
posted @ 2017-10-16 16:36 fengzw 阅读(158) 评论(0) 推荐(0)
摘要:原题地址: https://leetcode.com/problems/word-ladder/description/ 题目: Given two words (beginWord and endWord), and a dictionary's word list, find the lengt 阅读全文
posted @ 2017-10-12 15:55 fengzw 阅读(149) 评论(0) 推荐(0)
摘要:动态规划(DP) 阅读全文
posted @ 2017-09-29 21:40 fengzw 阅读(4335) 评论(0) 推荐(0)