自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 剑指 12 矩阵中的路径

剑指 12 矩阵中的路径文章目录剑指 12 矩阵中的路径原题目考查知识点好的解法优化原题目请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径。路径可以从矩阵中的任意一格开始,每一步可以在矩阵中向左、右、上、下移动一格。如果一条路径经过了矩阵的某一格,那么该路径不能再次进入该格子。例如,在下面的3×4的矩阵中包含一条字符串“bfce”的路径(路径中的字母用加粗标出)。[[“a”,“b”,“c”,“e”],[“s”,“f”,“c”,“s”],[“a”,“d”,“e”,“e”]

2020-10-30 21:27:22 221

原创 剑指 11 旋转数组的最小数字

剑指 11 旋转数组的最小数字文章目录剑指 11 旋转数组的最小数字原题目考查知识点好的解法原题目把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一个旋转,该数组的最小值为1示例 1:输入:[3,4,5,1,2]输出:1示例 2:输入:[2,2,2,0,1]输出:0示例 3:输入:[1,3,5]输出:1示例 4:输入:[1,1,1]

2020-10-29 21:34:19 112

原创 剑指 10 斐波那契数列

剑指 10 斐波那契数列文章目录剑指 10 斐波那契数列原题目自己的第一遍解法好的解法斐波那契数列变形:青蛙跳台阶原题目解法原题目写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项。斐波那契数列的定义如下:F(0) = 0, F(1) = 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。答案需要取模 1e9+7(1000000007),如计算初始结果为:1

2020-10-28 21:16:50 357

原创 五、策略梯度

五、策略梯度文章目录五、策略梯度1.1 名词介绍1.2 policy1.2.1 actor与环境互动1.2.2 轨迹1.3 蒙特卡洛(MC)和时序差分(TD)的联系与区别1.4 REINFORCE的计算过程1.1 名词介绍首先介绍几个名词:actor:产生并执行策略或动作(policy或者action)的东西。比如打游戏,actor就是手柄,操纵角色移动。environment:同样是打游戏,environment 就是主机,能够根据手柄输出的信号改变什么,比如角色进攻、怪物被打死等。rewar

2020-10-26 21:55:33 153

原创 剑指 09 用两个栈实现队列

剑指 09 用两个栈实现队列文章目录剑指 09 用两个栈实现队列1.1 原题目1.2 解法1.2.1 类模板1.2.2 普通类1.1 原题目用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )示例 1:输入:["CQueue","appendTail","deleteHead","deleteHead"][[],[3],[],

2020-10-26 21:13:03 101

原创 模板基础知识

模板基础知识文章目录模板基础知识1.1 定义模板1.2 函数模板1.2.1 模板参数的定义1.2.2 模板参数的作用1.3 类模板1.3.1 与函数模板的不同1.3.2 类模板的定义模板是C++泛型编程的基础。库容器,比如迭代器和算法,都是泛型编程的例子,它们都使用了模板的概念。1.1 定义模板之所以使用模板就是为了避免重用代码的繁琐,比如定义一个比较两个元素的函数,如果根据传入参数的类型而分别定义不同的重载函数,这样就是大量重复工作,并且不能保证地定义的重载函数能囊括所有的使用情况。模板的定义主

2020-10-25 20:56:48 447

原创 三、表格型方法

三、表格型方法文章目录三、表格型方法Sarsaon-policy和off-policyQ-learningSarsaMDP问题可以表示为四元组(S,A, R,P)。S为状态,A为动作,R为奖励,P为转移概率。也可以在四元组的基础上再加一个衰减因子γ表示为五元组。如果我们知道这些状态转移概率和奖励函数的话,就说这个环境是已知的,因为我们是用这两个函数去描述环境的。我们用价值函数V,V是状态S的函数,来代表这个状态是好的还是坏的。然后用 Q 函数来判断说在什么状态下做什么动作能够拿到最大奖励,用 Q 函

2020-10-24 20:18:06 288

原创 剑指 08 二叉树的下一个节点

剑指 08 二叉树的下一个节点文章目录剑指 08 二叉树的下一个节点原题目审题思路好的解法获得的思考原题目给定一棵二叉树和其中的一个节点,找出中序遍历序列的下一个节点。注意,树中的节点除了有两个分别指向左右子节点的指针,还有一个指向父节点的指针。示例: a / \ b c / \ / \ d e f g / \ h i中序遍历序列:[d, b, h, e, i, a, f, c, g]审题思路题目中

2020-10-22 20:25:27 77

原创 二、MDP问题

MDP问题文章目录MDP问题马尔科夫性与马尔科夫奖励贝尔曼方程MDP policy简单回忆一下上一篇笔记 一、强化学习基础 中讲到的agent与environment交互的过程:当环境environment处于某个状态state时,智能体agent采取某个动作action,该动作会对environment产生影响,使environment进入下一个状态state’,并且在状态改变的时刻,环境还会给出一个奖励reward。流程图如下所示:马尔科夫性与马尔科夫奖励学过随机过程的小伙伴都应该知道,马尔科

2020-10-22 18:27:17 2949

原创 剑指 07 重建二叉树

剑指 07 重建二叉树文章目录剑指 07 重建二叉树原题目好的解法原题目输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。示例:前序遍历 preorder = [3,9,20,15,7]中序遍历 inorder = [9,3,15,20,7]返回宽度优先搜索形式的二叉树,如下: 3 / \ 9 20 / \ 15 7 输出:[3,9,20,null,null,15,7]好的解法

2020-10-21 21:52:43 90

原创 剑指 06 从尾到头打印链表

剑指 06 从尾到头打印链表文章目录剑指 06 从尾到头打印链表原题目自己的第一遍解法好的解法改变链表不改变链表测试用例原题目输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。示例 1:输入:head = [1,3,2]输出:[2,3,1]给出链表的定义:/** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next; * L

2020-10-20 21:25:30 131

原创 动态内存基础知识

文章目录动态内存基础知识一、销毁对象与释放内存的关系1.1 销毁对象1.1.1 对象含义1.2 释放内存二、运算符与智能指针2.1 new2.2 delete2.3 不正确使用new与delete的问题2.4 智能指针动态内存基础知识一、销毁对象与释放内存的关系这里主要参考C++ Primer:销毁对象与释放内存的关系?–[北冥有鱼wyh]销毁对应对象,因为对象是由我们创建的,可以被我们决定生死。释放对应内存,因为不管你想不想,内存就在那,不会自生自灭(除非你把它掰断)。1.1 销毁对象1.1.

2020-10-18 20:24:02 394

原创 一、强化学习基础

强化学习基础文章目录强化学习基础概念与监督学习对比Exploration(探索) 和 exploitation(剥削)强化学习实例DRL=DL+RL序列决策交互过程Reward序列决策马尔科夫决策过程动作空间Agent的组成Policy functionValue functionModel基于不同函数的agent举一个走迷宫的例子Model-free与Model-based概念强化学习讨论的问题是一个 智能体 agent 怎么在一个复杂不确定的环境 environment 里面去极大化它能获得的

2020-10-18 17:46:00 739 2

原创 指针基础知识

指针基础知识文章目录指针基础知识指针与引用的区别符号的多重含义空指针与野指针指针赋值指针的复合类型复合类型的声明指向指针的指针C++中的指针是一大难点,开这篇文章整理一下乱掉的脑子。本文主要参考《C++ Primer》指针与引用的区别指针与引用一样,都是对其他对象的间接访问,但区别就在于:指针就是一个对象,可以先后指向不同的对象引用并非对象,它只是所引用对象的一个别名,一旦定义给某个对象定义引用,则该引用不能更换给别的对象符号的多重含义对于指针的声明和使用过程中,有两个符号* &a

2020-10-15 20:52:35 337

原创 剑指 05 替换空格

剑指 05 替换空格原题目请实现一个函数,把字符串 s 中的每个空格替换成"%20"。示例 1:输入:s = "We are happy."输出:"We%20are%20happy."自己的第一遍解法使用额外空间,比较简单,就是按顺序扫描一遍输入的字符串,如果是非空格就直接push_back到新字符串中,如果是空格就push_back“%20”到新字符串中。 //解法1:使用额外空间 class Solution { public: string replaceSpace(

2020-10-14 20:33:57 68

原创 剑指 04 二维数组中的查找

剑指 04 二位数组中的查找原题目在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。示例:现有矩阵 matrix 如下:[ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14, 17, 24], [18, 21, 23, 26, 30]]给

2020-10-13 21:46:51 83

原创 剑指 03 题目二 不修改数组找出重复的数字

剑指03 题目二 不修改数组找出重复的数字文章目录剑指03 题目二 不修改数组找出重复的数字原题目自己的第一遍解法复杂度分析其他好的解法测试用例获得的思考原题目在一个长度为n+1的数组里的所有数字都在1~n范围内,所以数组中至少有一个数字重复。找出一个重复的数字但不能修改原数组示例:输入:{2,3,5,4,3,2,6,7}输出:2或3自己的第一遍解法本题是这道题的延伸,剑指 03 数组中重复的数字既然给出了数组长度,第一个念头还是想到哈希法,与上面题中代码基本一致,需要修改的就是构造

2020-10-12 21:41:25 171

原创 剑指 03 题目一 数组中重复的数字

剑指 03 数组中重复的数字文章目录剑指 03 数组中重复的数字原题目自己的第一遍解法复杂度分析网上好的解法复杂度分析获得的思考原题目找出数组中重复的数字。在一个长度为 n 的数组 nums里的所有数字都在 【0,n-1】的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例 1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3 限制:2 <= n <= 100000自己的第一遍解

2020-10-11 21:20:57 99

原创 C++刷题学习笔记目录

刷题笔记为找工作做准备,记录刷题心得与代码力扣系列目录刷题笔记一、数组【283】移动零二、字符串字符串匹配KMP算法一、数组【283】移动零二、字符串字符串匹配KMP算法

2020-10-10 19:58:25 1402 6

原创 刷题笔记 力扣283 移动零

文章目录283 移动零自己的第一遍解法网上好的解法双指针法测试用例获得的思考获得的思考283 移动零给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。自己的第一遍解法思路:先统计容器中0的个数,删掉所有的零,并在结尾补零class Solution{public: void moveZero

2020-10-10 19:49:25 200

转载 字符串匹配 KMP算法

文章目录前言参考一、KMP是什么?二、KMP实例1. 问题2. 部分匹配值的计算总结前言本系列是笔者进行C++学习的笔记,包括平时的学习心得、对大佬允许转载内容的记录等等参考字符串匹配的KMP算法 作者:阮一峰KMP算法的前缀next数组最通俗的解释 作者:CodeNoob一、KMP是什么?我们在一个母字符串中查找一个子字符串有很多方法。KMP是一种最常见的改进算法,它可以在匹配过程中失配的情况下,有效地多往后面跳几个字符,加快匹配速度。当然我们可以看到这个算法针对的是子串有对

2020-10-03 15:23:28 430

空空如也

空空如也

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

TA关注的人

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