自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 动态规划类题目的解决之道

首先明确无法用动态规划的情况有哪些?第一种,无法提前知道拓扑排序,也就是无法知道填充顺序。第二种,没有重复计算,dependencygraph里node的入度都是1,没必要用dp。第三种,依赖关系构成环。知道拓扑关系,就知道填充数组或者矩阵的顺序是什么样的,到底是从上到下还是从右向左还是斜着对角线。动态规划的解决步骤:definition: dp[i] 表示是f(i) 是多少 => 存的是v...

2018-05-15 23:20:05 165

原创 深度解读DFS深度优先搜索

首先我们来看DFS问题的四个母题,所有的DFS问题都会由这四个母题演变过来的,DFS的特点是遍历所有的解或者路径,在做题之前,首先确定树的形状,总共多少层,每个节点有多少个分支,根据树的形状可以确定该算法的时间复杂度。问题一:求一个字符串的所有子串Given a set of characters represented by aString, return a list containing a...

2018-05-15 23:13:06 433

原创 常见的排序算法分析

1. 常见的排序方法和时间复杂度。首先明确下,什么是稳定排序,队列中存在两个相等的数字排序过程中,这两个数字的先后顺序如果不会发生变化,就叫做稳定排序,否则不稳定。几种排序的情况排序方法   平均情况          最好情况    最坏情况    辅助空间     稳定性冒泡排序   O(n^2)             O(n)        O(n^2)       O(1)       ...

2018-05-15 23:12:00 124

原创 从word ladder题目看DFS和BFS(下)

同理,我们来看下wordladder II,这个题难度更大,先来看看题目描述,Given two words (beginWord and endWord),and a dictionary's word list, find all shortest transformation sequence(s) frombeginWord to endWord, such that: Only one ...

2018-05-15 00:39:57 352

原创 从word ladder题目看DFS和BFS(上)

最近在刷题并整理DFS和BFS的思路,有两道题引起了我的注意,就是leetcode上的126和127两个word ladder题目。首先我们先来关注下这两道题的描述,127题只需要记录单词转换的最短路径长度就好,而126题需要记录所有最短转换路径。127题属于中等难度的题目,但是126题属于hard难度的题目。127题描述:Given two words (beginWord and endWor...

2018-05-15 00:23:09 703

原创 迷宫的最短路径问题,分别用DFS和BFS做

迷宫的最短路径一般来说用BFS做,但是也可以用DFS做,如果最优路径只有一条的话,穷尽所有的路径然后找出路径最短的就好了。不废话,先上BFS代码,这个代码中,用到了每一个位置的前驱节点,需要记住。然后逆着路径打印出来。#include<iostream>#include<vector>#include<queue>using namespace std;type...

2018-05-13 23:58:06 9029 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除