题目描述 image.png 考点 动态规划 解题思路 使用动态规划:我们从左上角到右下角进行一次动态搜索,再从右下到左上进行一次动态搜索。两次动态搜索即可完成四个方向的查找; 解题思路.png 代码实现 class Solution { public: vector<vector<int>> up ...
分类:
其他好文 时间:
2020-12-04 11:00:34
阅读次数:
4
入门版(206题) 题目描述 解题思路:迭代 使用cur和pre两个指针,一前一后(一左一右)地指向两个相邻节点 在每一轮迭代中: 用临时指针保存pre的next 让pre的next(掉头)指向cur cur和pre都沿着链表原来的方向,向前(右)走一步 当pre为空时,迭代结束 此时cur就是新链 ...
分类:
其他好文 时间:
2020-12-03 12:12:56
阅读次数:
6
给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。例如:输入 s = "anagram",t = "nagaram",s 和 t 是字母异位词,而 s = "rat",t = "car",此时 s 和 t 不是字母异位词。你可以假设字符串中只有小写字母 解题思路 使用哈 ...
分类:
其他好文 时间:
2020-11-25 13:02:58
阅读次数:
17
方法一:递归 解题思路 递归法,假设后续链表已经完成交换,此时只需要对前两个节点进行交换,然后再连接上后续已交换的链表即可。 代码 /** * Definition for singly-linked list. * public class ListNode { * public int val; ...
分类:
其他好文 时间:
2020-11-25 12:29:02
阅读次数:
5
解题思路 三指针,一个指向前半部分待插入位置,一个指向后半部分待插入位置,最后一个从前往后遍历 代码 /** * Definition for singly-linked list. * public class ListNode { * public int val; * public ListN ...
分类:
其他好文 时间:
2020-11-25 12:06:05
阅读次数:
7
题意:构造一个长度为n的数组,使得每个子数组中所有元素的和能被这个子数组的长度整除 解题思路:显然,构造一个元素全部相同的数组即可满足要求 代码: #include<iostream> #include<algorithm> #include<vector> #include<cstdio> #in ...
分类:
其他好文 时间:
2020-11-21 11:55:12
阅读次数:
6
给定一个非空字符串 s,最多删除一个字符。判断是否能成为回文字符串。 image.png 解题思路: 判断是否回文字符串:isPalindrome = lambda x: x==x[::-1],即将字符串x倒置,还和原来的一样; 如何判断删除一个字符后还是回文字符串?假设字符串s='abccbca' ...
分类:
其他好文 时间:
2020-11-20 11:39:00
阅读次数:
5
题目描述 给定两个字符串,求解这两个字符串的最长公共子序列(Longest Common Sequence)。比如字符串1:BDCABA;字符串2:ABCBDAB。则这两个字符串的最长公共子序列长度为4,最长公共子序列是:BCBA。序列无须是连续的,重复即可。 解题思路 暴力遍历 动态规划 暴力遍历 ...
分类:
其他好文 时间:
2020-11-16 13:50:06
阅读次数:
9
题目链接 127. 单词接龙 题目描述 解题思路 题目中有个关键词:最短转换序列的长度,我们知道常见的搜索算法有两种:DFS和BFS,那么本题适用哪种算法呢?两种都适用吗? 记住题目中如果出现最短关键字一定要采用BFS搜索算法去解决,而不是采用和我一样采用DFS(一开始死磕DFS,搞了一下午还是没有 ...
分类:
其他好文 时间:
2020-11-13 13:14:15
阅读次数:
19
从前序与中序遍历序列构造二叉树 题目: 根据一棵树的前序遍历与中序遍历构造二叉树。 注意: 你可以假设树中没有重复的元素。 例如,给出 前序遍历 preorder = [3,9,20,15,7] 中序遍历 inorder = [9,3,15,20,7] 返回如下的二叉树: 解题思路:前序数组的第一个 ...
分类:
其他好文 时间:
2020-11-13 12:22:54
阅读次数:
7