自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 算法——动态规划(新)

由于付一次钱,就可以爬一层或者两层楼梯,所以我们需要比较的是到第i-1层和到第i-2层最小的值————min(dp[i-1]+cost[i-1],dp[i-2]+cost[i-2]) 因此这就是我们的状态转移方程。思路和不同路径的思路一样,只不过需要判断障碍物的位置,若是有障碍物,那么就直接将障碍物所在的dp表的值定为0,表明到此位置的路径数为0,无法到达。这里我们知道判断就只有两个,一个是单个数字,一个是两个数字,所以我们也可以按照动态规划的方式,由第n-1个和第n-2个推出第n个的值。

2023-11-19 23:54:20 1127

原创 算法——滑动窗口

什么是窗口?就是符合题目要求的区域内的数据,将每次符合数据的窗口内的数据记录下来,然后将窗口后移,寻找其他符合要求的数据,每次进入窗口和退出窗口都需要一定的要求。

2023-11-12 16:41:00 365

原创 算法——多数相和

所以代码实现应该是。

2023-11-04 15:47:38 283

原创 算法——动态规划

动态规划的一些题目,会陆续更新及其讲解

2023-10-10 17:47:33 795

原创 算法——买卖股票问题

由于有三个阶段,买入,可交易,冷冻期,那么用dp表表示现在为止的最大利润,则有。同上,两个阶段,那么就是dp[0][0]=-p[0],dp[0][1]=0;究其就是个动态规划的问题。未完待续......

2023-10-03 22:31:33 220

原创 算法——双指针

这道题的重点是,如何用最小的操作数,来使其x变为0——也可以看作是用最少的数据个数,来求和得到x。——但是我们可以知道,由于数据是从两端向中间取的,所以每一次的数据取完后,中间的数据仍是连续的。所以我们可以将题目从求和为x的最小数据个数——>求和为sum-x的最多数据个数。由于中间数据是连续的,所以我们可以用双指针来进行遍历查找。期间需要一个循环来进行修正。

2023-09-17 16:58:39 264 1

原创 算法笔记—多数相加

多数求和的巧解

2023-09-16 15:15:50 358

原创 算法笔记——循环链表

算法题中,会有一种题目让我们去判断链表里的是否有循环。这里就需要我们要用快慢指针来进行搜索,直接提供代码工作原理如下图因为fast始终会比slow快一步,所以在循环里始终会相遇,若没有循环,那么fast就会读取到最后nullptr处,然后终止判断即可。

2023-09-14 12:23:53 249

原创 算法——快乐数

由图可知,其实这也是一个判断循环的过程,要用到快慢指针,且相遇后,若在全为1的循环里,那么就是快乐数,若相遇后不为1,说明这不是快乐数。

2023-09-14 12:22:39 558

原创 算法笔记——路径问题

解算法题的一些简要步骤

2023-09-03 14:16:43 355

原创 C++——list的简要介绍

list介绍以及简要模拟实现

2023-08-15 16:14:52 1363

原创 C++——string的简要模拟实现

string简要模拟实现

2023-08-11 19:04:32 264

原创 C++——vector介绍及其简要模拟实现

vector及其简要模拟实现

2023-08-11 18:23:57 370

原创 C++——string类介绍

string类比较常用的几个函数

2023-08-09 03:45:00 215

原创 C++——模板简要介绍

类模板、函数模板

2023-08-09 00:30:00 154

原创 C++——内存管理

内存管理以及new和delete的用法

2023-08-08 16:52:16 726

原创 类和对象——初始化列表

初始化列表,static,匿名函数,友元,内部类

2023-07-31 16:01:38 511

原创 C++ 类和对象

面向过程/面向对象C语言是面向过程,关注过程,分析出求解问题的步骤,通过函数调用逐步解决问题C++是基于面对对象的,关注的是对象——将一件事拆分成不同的对象,依靠对象之间的交互完成引入C语言中结构体只能定义变量,但是在C++中,结构体不仅可以定义变量,也能定义函数以栈为例,C++里对于栈的函数可以这样子写://C++struct Stack{ //成员变量 int* a; int top; int capacity; //成员函数——直接将函数与成员变量放在一起定义

2023-07-30 20:23:57 239

原创 Linux基本指令操作

当我们获取公网IP地址后,我们就可以打开xshell。此时会有这样的界面,我们若是想的登陆,则需要输入以下的指令ssh+ 用户名+@+公网IP地址然后会跳出以下的窗口接着输入密码——密码便是先前定好轻量云服务器的密码输入好并且通过成功后,就会出现以下的界面。

2023-07-24 21:40:50 706 2

原创 C++入门基础知识

命名空间,宏,输入输出,缺省参数,函数重载,引用,auto,nullptr等

2023-07-22 20:12:38 198 1

原创 算法——归并排序、计数排序

归并排序,计数排序

2023-07-22 15:17:28 150

原创 算法——快速排序

快速排序的三种找基准值key的方法,快速排序的非递归方法

2023-07-12 14:38:46 92

原创 数据结构——插入排序、希尔排序、选择排序

选择排序,插入排序,希尔排序

2023-07-10 10:48:37 119

原创 数据结构——二叉树习题整理总结

1.需要开创一个动态储存的数组,不为空则放入,为空则跳过,然后用递归对其左右子树进行数据的整理。其实就是需要一个树比较的函数,然后将左右子树放入比较,若有一个成立,那么就说明跟子树相同。本质上和比较相同子树是一样的,只不过比较的是对称的子树,改变变量即可。并且左右子树的左右子树也要遵循高度差不超过1的标准,所以需要递归。需要将左右对称的子树进行交换,那么就需要定义一个变量去进行交换。重点是将左右子树与根的比较分开来,然后再进行左右子树的分别比较。重点其实就是将左右子树的高度进行比较,使其高度差不超过1。

2023-07-05 13:41:00 90

原创 数据结构——二叉树链式结构实现

二叉树链式结构的一些简单实现以及层序遍历

2023-07-03 13:37:20 197

原创 数据结构——二叉树的遍历

学习二叉树的结构,由于二叉树的数据存放可以视作是一个数组,那么最简单方式就是遍历。那么二叉树的遍历又是按照某种特定的规定,依次对二叉数中的节点进行相对应的操作,且仅进行一次。

2023-06-29 21:26:18 89

原创 二叉树——堆中大量数据的筛选(Topk)

3.建立后,那么就从文件中一个个读取,若有比第一个数据大的,就进行替换,替换一次后就进行一次向下调整,然后以此往复,每一次比较都会将数组中最小的数据提出来,直到数组中的数据位前k个最大的,最后一次向下调整就会将数组的数据按照升序排放。2.建立数组后,那我们应该先进行建堆,就是将数据放入文件中——在文件中进行小堆的建立,也就是进行数据的排序,最小的数据会在顶处。上篇文章介绍了简要的堆排序,可以实现选取前k个最小/大的数据,如果数据量是1万,甚至是十万以上呢?(此处实现小堆,找最大的前k个)

2023-06-21 18:29:19 154

原创 数据结构——二叉树的堆排序

现提供一个数组怎么利用堆将其进行排序呢?——首先就需要进行堆的构建。

2023-06-18 15:30:54 73

原创 二叉树——堆

数据结构——二叉树——堆代码的实现

2023-06-14 21:27:10 96

原创 栈和队列练习——设计循环队列

概念图我们需要两个指针,一个用于标记队伍头部,一个用于标记尾部,且进行遍历且为了表示方便,我们开拓k+1个空间,保存k个数据,那么多出来的空间,用于存放遍历指针rear,且可以进行是否为空/是否满的判断此处,我们选择用数组队列的设计,方便进行数据的循环。

2023-06-04 15:04:11 64

原创 栈与队列练习题——用栈实现队列

首先需要知道,栈是先入后出,队列是先出先出的那么如果想用栈实现队列,那么需要两个栈,一个栈用于放入数据,另一个栈用于删除并且实行其他操作时,将两个栈的数据互换,此时也会实现数据顺序的互换例如实现队列头元素的删除删除时,将pushst中的元素通过栈放入到popst中,此时会变成此时再通过栈的顶部删除,便可以实现队列的头元素删除。

2023-06-04 10:20:17 78

原创 栈和队列练习题——用队列实现栈

首先,我们要知道队列和栈的概念图题目(队列栈:现在我们要用队列实现栈——怎么实现先入后出呢?我们可以用两个队列进行例如删除——可以将q1的元素留下最后一个,其余元素在q1中头出,然后头插放入q2,这不仅保留了数据,还实现的尾部元素删除。

2023-06-03 21:28:09 83

原创 数据结构——队列

typedef struct QueueNode //整体框架,一个元素的结构//结构体指针内又存放着其他数据,为单链表}QNode;//内部结构typedef struct Queue//队列更适合用链式结构去实现,队列的结构//出数据 用QNode修饰,那么说明phead也可以指向下一个元素next和储存data//入数据int size;//记录大小,虽然链表没有大小限制,但是可以方便读取大小,不需要遍历}Queue;

2023-06-03 20:47:08 169

原创 数据结构——栈

栈的简单实现

2023-05-29 13:15:15 81

原创 链表练习题——返回链表的深度拷贝

题目的分享

2023-05-28 08:15:00 252

原创 数据结构-双向链表

/下一个地址//前一个地址//存放的数据大小}LTNode;

2023-05-27 20:44:47 99

原创 数据结构——链表(单链表)

无头单向单链表的简单实现

2023-05-20 21:03:57 105

原创 数据结构入门——顺序表

顺序表的实现

2023-04-22 19:32:35 91

原创 字符函数以及字符串函数

字符串函数的简单介绍以及自定义实现

2023-04-16 18:33:47 86

原创 简单通讯录的实现

利用结构体实现简单的通讯录

2023-03-26 16:26:03 250

空空如也

空空如也

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

TA关注的人

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