自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

hjyp的博客

记录我的学习过程

  • 博客(19)
  • 收藏
  • 关注

原创 《算法笔记》动态规划

目录概念什么是动态规划动态规划的递归写法和递推写法最优子结构分治与动态规划的区别贪心与动态规划的区别无后效性最大连续子序列和概念什么是动态规划动态规划,是一种用来解决一类最优化问题的算法思想。动态规划的思想就是将一个大问题转化为若干个子问题,但是子问题必须具有重复子问题和无后效性,不然就是分治了;此外动态规划问题还必须满足最优子结构和重复子问题。每求出一个子问题就把这个子问题的结果保存下来...

2020-04-27 17:05:01 330

原创 LeetCode 199.二叉树的右视图

题目题目链接思路给一颗二叉树,输出每一层最右边的节点。最直观的办法是用BFS进行层序遍历,在开始每一层遍历前都获取一下此时队列中元素的个数,循环到最后一个输出即可。代码class Solution {public: vector<int> rightSideView(TreeNode* root) { vector<int> ans;...

2020-04-23 16:52:45 77

原创 PAT (甲级) 1030 Travel Plan

题目题目链接思路这是一道用Dijktras 求最短路径的问题,根据题意需要先找到距离最短的路径,如果存在多条最短路径,则找到花费最小的最短路径;可以直接用Dijktras 算法,额外开一个pre数组存储最短路径上每个节点的前驱,和一个cost数组存储起始点到这个点的最小花费,每找到一个最短路径相同就进行比较是否需要更新,比较麻烦,记录的东西有点多;还有一个办法是用Dijktrs + DF...

2020-04-23 16:09:25 91

原创 PAT 1003.Emergency

#include<iostream>#include<vector>#include<cstring>#include<algorithm>#include<map>#include<queue>using namespace std;const int maxn = 510;//最大的节点数const int...

2020-04-22 16:28:20 105

原创 未来很美好,要充满希望继续努力呀

现在算是有点明白什么是“台下十年功”了,今天打开B站的时候看到首页推荐了力扣国服第一打周赛的视频,关注后发现原来他和坑神一样,专业竞赛出身,已经接触编程十几年了,不禁感叹毕竟自己接触的时间长,不会很正常,他们肯定也是从我现在的阶段慢慢过来的,所以现在要求自己扎扎实实地学习,别人跟已经接触那么长时间了,自己得努力赶上啊,时间和质量都得保证。还有又看了另一个博主写的一篇文章,后来我想了想也是,这个世...

2020-04-21 16:47:20 307

原创 《算法笔记》图

目录图的存储方式(邻接矩阵和邻接表)图的遍历(BFS和DFS)图的存储方式(邻接矩阵和邻接表)邻接矩阵:邻接矩阵是一个方阵,行数 = 列数 = 节点元素个数;可以较方便的存储节点间的权值,但是耗费空间,1000 * 1000 以上就不要用了;邻接表:每一个元素都有一个数组,数组存与他相连的节点id,如果存权值的话,需要放结构体,可以用 vector 实现;图的遍历(BFS和DFS)图的...

2020-04-20 17:28:30 178

原创 《算法笔记》堆

目录堆的常用操作(新建堆,插入元素,删除堆顶)堆排序堆的常用操作(新建堆,插入元素,删除堆顶)理论:1、downAdjust(low,high)的作用是调整这个闭区间范围内的元素,使其满足堆的性质;调用此函数的前提是除了low之外,其他节点满足堆的性质;2、createHeap()在建堆时是倒着从第一个非叶节点元素开始调用downAdjust();3、deleteHeap()是将最后一个...

2020-04-17 12:30:26 148

原创 《算法笔记》并查集

题目并查集并查集#include <iostream>#include<vector>#include<cstring>#include<algorithm>#include<queue>using namespace std;const int maxn = 300;int father[maxn];//存储父节点i...

2020-04-17 10:29:11 138

原创 【高等数学】函数、极限、连续

目录题型一 七种未定式求极限前言零比零常见手法一的无穷次方无穷减无穷无穷比无穷无穷乘零零的零次方题型二 多项式求和题型三 间断点的判别题型四 证明数列极限的存在性证明存在性求极限题型一 七种未定式求极限前言1、七种不定型极限:零比零;一的无穷次方;无穷比无穷;零乘无穷;无穷减无穷;零的零次方;无穷的零次方。2、拿到一个题的第一步应该是判断属于哪种不定型求极限,再动手。3、遇到x...

2020-04-16 16:09:43 2689

原创 解决CodeBlock常见问题(配置环境变量、调试器、解决乱码)

前言这几天学习数据结构一直在用codeblock码代码,从安装到使用也是遇到了很多问题,接下来跟大家分享一下如何解决这些问题。下载,安装,配置编译器和调试器下载软件下载直接从官网下载就可以了,官网下载好的一种是自带WinGW编译器的,一种是不带MinGW编译器的。下载MinGW编译器如果你下载的是不带编译器的,需要自己去MinGW下载一个c++的编译器(比如我~~~~)。有的初学小伙...

2020-04-14 11:39:21 5564

原创 《算法笔记》树与二叉树

目录普通树树的理论知识二叉树满二叉树和完全二叉树定义完全二叉树的性质二叉树的四种遍历(先序,中序,后序,层次)给定中序和另一个序,还原二叉树普通树树的理论知识1、没有节点的数称为空树;2、树的层次遍历从根节点开始算起,根节点为第一层;3、树中节点的最大度数称为树的度;4、n个节点的树,边数一定是n-1;满足连通,边数等于顶点数减一的结构一定是一棵树;5、节点的深度是指从根节点(深度为...

2020-04-09 16:20:41 101

原创 《算法笔记》DFS、BFS

目录背包问题(不剪枝)背包问题(剪枝)求解最优子序列问题背包问题(不剪枝)问题描述:给你一些物品,以及这些物品的重量和价值,求在不超过最大重量的前提下所选物品的最大价值#include <iostream>using namespace std;const int maxn = 30;int n, V, maxValue = 0;//n代表物品数量,V代表最大重量, m...

2020-04-07 15:05:19 169

原创 LeetCode 228.区间汇总

题目题目链接思路双指针,找到满足题意的连续闭区间 [i,j],找到后会有两种情况,i==j 时 输出一个元素;i!= j 时输出一个区间;其实最后一个元素就两种情况:1.最后一个元素单独是一个区间;2.最后一个元素包含在前一个区间内;代码class Solution {public: vector<string> summaryRanges(vector&l...

2020-04-07 10:12:53 183

原创 1052 Linked List Sorting (25point(s))

题目题目链接思路先用静态链表将结构体信息存储下来,依次遍历链表中的有效元素,并记录其个数;对整个数组进行排序,将有效元素放到数组的左边,有效元素之间按照关键字的大小排序;代码#include <iostream>#include<vector>#include<string>#include<algorithm>using na...

2020-04-06 14:40:52 118

原创 LeetCode 5377.将二进制表示减到1的步数

题目题目链接思路从后往前遍历字符串,除2相当于右移一位;如果idx所指的是1,则需要不断向前进位,直到碰到0为止,并将这个0位修改为1,在这个过程中,ans++, idx--,表示只需要右移一位即可消除此位;如果idx前面所有位都是1,那么只要ans++,idx--就可以了,直接可以得到结果,不需要改位;如果idx所指元素是0,直接ans++,idx++,代表右移一位即可;代码c...

2020-04-06 10:23:14 92

原创 《算法笔记》链表

目录动态链表的操作(增删改查)静态链表动态链表的操作(增删改查)链表一般是带头结点的链表,头结点并没有数据;遍历链表时,先令p = head - > next,,只要p非空,就可以一直循环;删除链表元素时,需要两个指针,一个指向将要删除的元素,另一个指向删除元素的前驱;增加元素时,要先找到目标元素,然后新建一个节点,在这个目标元素的后面加上新建节点#include <io...

2020-04-04 18:21:38 127

原创 《算法笔记》栈和队列

模拟计算器#include <iostream>#include<vector>#include<string>#include<queue>#include<stack>#include<map>using namespace std;struct node { int num; char o...

2020-04-03 10:54:15 83

原创 LeetCode 289.生命游戏

题目点击查看原题思路遍历每一个网格点,同时额外写一个辅助函数查看这个网格点周围有几个活细胞;分情况讨论就OK了代码class Solution {public: int dx[8] = {-1, -1, 0, 1, 1, 1, 0, -1}; int dy[8] = {0, 1, 1, 1, 0, -1, -1, -1}; int findCnt(int x...

2020-04-02 17:14:33 185

原创 《算法笔记》 STL

目录stringqueuepriority_queue自定义优先级string string s1 = "hejianfei"; cout << s1 << endl; //插入字符串 s1.insert(1, "wo"); cout << s1 << endl; s1.erase(s1.begin(...

2020-04-02 16:38:37 187

空空如也

空空如也

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

TA关注的人

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