- 博客(64)
- 收藏
- 关注
原创 双指针专训
给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。,必须在不复制数组的情况下原地对数组进行操作算法原理:定义双指针:left = 0, right = -1,++right,再检查nums[ right ] 的值,等于 1 则与nums[ left ]交换,交换后++left这是ac代码。
2024-05-10 14:18:03 641
原创 动态规划专训8——背包问题
1049. 最后一块石头的重量 II有一堆石头,用整数数组stones表示。其中stones[i]表示第i块石头的重量。每一回合,从中选出任意两块石头,然后将它们一起粉碎。假设石头的重量分别为x和y,且x
2024-05-08 22:43:32 952
原创 动态规划专训5——子序列系列
动态规划题目中,常出现子序列相关问题,这里单独挑出来训练注意:子序列与子数组不同,子数组要求的是原数组中连续的一部分,而子序列要的是原数组以原排列方式,抽取一部分。
2024-04-30 13:05:57 637
原创 动态规划专训2——路径问题
一个机器人位于一个m x n网格的左上角 (起始点在下图中标记为 “Start” )。机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish”问总共有多少条不同的路径因为题给信息,一维数组已经完成不了要求,所以我们要用二维数组1.状态表示:用dp[ i ][ j ]表示以第 i 行 j 列为结尾的路径总和2.状态转移方程:dp[ i ][ j ] = dp[ i - 1][ j ] + dp[ i ][ j - 1 ]
2024-04-09 22:32:32 679
原创 动态规划专训1——泰波那契数列模型
动态规划的思想:将一个问题分隔为若干个子问题,完成子问题得到结构再得到最终的答案动态规划往往解题步骤固定,分为以下几步1.找出状态表示2.完成状态转移方程3.初始化4.填表顺序5.返回值后面三步偏重细节,二解题的核心就在于前两步,所以要想练好动态规划,大量的练习,见识更多的题型无疑是很重要的,下面我们开始今天的练习。
2024-04-08 08:50:23 1042
原创 C++从零开始(day55)——C++11
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于C++的语法知识点。
2024-03-20 21:02:21 1118
原创 C++从零开始(day54)——位图,布隆过滤器
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于位图, 布隆过滤器相关的知识点。
2024-03-19 20:00:46 593
原创 C++从零开始(day53)——unordered_set,unordered_map模拟实现
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于unordered_set,unordered_map模拟实现。
2024-03-17 08:36:15 1421
原创 C++从零开始(day52)——unordered_set,unordered_map学习使用
C++98中,STL提供了底层为红黑树结构的一系列容器,在查找时效率可以达到时间复杂度可以达到O(logN),即红黑树的高度次,当树中的结点非常多时,查询效率也不理想,因此在C++11中,STL又提供了4个unordered系列的关联式容器,者四个容器与红黑树结构的关联式容器使用方法类似,只是其底层结构不同,这里只介绍unordered_set,unordered_map,关于unordered_multiset,unordered_multiset与其大同小异,这里不再花大量篇幅赘述。
2024-03-16 22:08:37 1292
原创 C++从零开始(day51)——set,map模拟实现
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于set,map模拟实现。
2024-03-14 08:43:28 480
原创 C++从零开始(day50)——RBTree模拟实现
RBTree结点是一种三岔链,不仅存储了左右子树结点的指针,还要存储父亲结点的指针,当然还要存储结点颜色以及pairBLACK,RED, _kv(kv){}
2024-03-13 09:15:53 648
原创 C++从零开始(day49)——AVLTree模拟实现
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于AVLTree模拟实现。
2024-03-12 15:06:26 1100
原创 C++从零开始(day48)——map再深理解
map类里有重载[ ],但是这里的[ ]与vector, string,deque里的不一样,简单来说,传入pair键值对里面的key,返回其映射对象value的引用,在了解它的之前,我们先来探究map里的insert是怎样的底层实现。
2024-03-11 22:13:38 922
原创 C++从零开始(day47)——set,map学习使用
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于set和map的知识点。
2024-03-09 20:42:33 2129 3
原创 C++从零开始(day46)——二叉树相关题目3
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于二叉树的题目。
2024-03-08 20:02:44 865
原创 C++从零开始(day45)——二叉树相关题目1
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于二叉树的题目。
2024-03-07 19:54:46 1153
原创 C++从零开始(day44)——二叉搜索树
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于二叉搜索树的知识点。
2024-03-06 16:00:36 2317 2
原创 C++从零开始(day43)——多态
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于多态的知识点
2024-03-05 19:50:43 1079
原创 C++从零开始(day42)——菱形继承
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于继承和多态的知识点1.菱形继承我们有许多关于继承的方式1.单继承一个子类只有一个直接父类称这个继承关系为单继承2.多继承一个子类有两个或以上直接父类时称这个继承关系为多继承3.菱形继承菱形继承是多继承的一种特殊情况。
2024-03-04 14:14:34 571
原创 C++从零开始(day41)——派生类的默认函数
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于继承的知识点首先我们来回顾以下默认成员函数是哪几个1.构造函数 完成初始化工作2.析构函数 完成清理工作3.拷贝构造函数 使用同类对象初始化创建新对象4.赋值重载函数 把一个对象赋值给另一个对象5.
2024-03-03 23:01:46 752
原创 C++从零开始(day40)——继承
继承机制是面向对象程序设计使代码可以复用的最重要的手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能,这样产生的新的类叫做派生类。继承呈现了面向对象程序组设计的层次结构,体现了由简单到复杂的认识过程。以前我们接触到的复用都是函数复用,继承是类设计层次的复用我们来看下面的代码public:int _age;这段代码中Student就是派生类(子类),public就是继承方式,Person就是基类(父类)
2024-03-02 22:23:25 688 2
原创 C++从零开始(day39)——模板再认识
优点:1. 模板复用了代码,节省资源,更快的迭代开发,C++的标准模板库(STL)因此而产生2. 增强了代码的灵活性缺点1. 模板会导致代码膨胀问题,也会导致编译时间变长2. 出现模板编译错误时,错误信息非常凌乱,不易定位错误!
2024-03-01 22:56:59 3531 2
原创 C++从零开始(day38)——stack,queue模拟实现
适配器是一中设计模式(设计模式是一套被反复使用,多数人知晓的,经过分类编目的,代码设计经验的总结),该种模式是将一个类的接口转换成客户希望的另一个接口也就是我们常说的复用。
2024-02-29 15:54:25 1941
原创 C++从零开始(day37)——stack,queue相关题目3
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于stack和queue的题目。
2024-02-28 14:51:44 578
原创 C++从零开始(day36)——stack,queue相关题目2
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于stack和queue的题目。
2024-02-27 20:57:56 502
原创 C++从零开始(day35)——stack,queue相关题目1
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于stack和queue。
2024-02-08 23:57:31 295
原创 C++从零开始(day34)——stack,queue学习使用
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于stack和queue。
2024-02-07 23:43:15 376
原创 C++从零开始(day33)——list模拟实现3
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于list的模拟实现,今天收尾,明天开始stack和queue。
2024-02-06 23:21:56 1099
原创 C++从零开始(day32)——list模拟实现2
当list中存储的是自定义类型时,我们来看下面的代码int _year;int _month;int _day;很明显如果要通过it访问_year(或_month,_day)应该是it->->_year第一次->通过it访问到Date,第二次->通过Date再访问到_year。
2024-02-05 23:06:35 410
原创 C++从零开始(day31)——list模拟实现1
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于list的模拟实现,今天只实现一部分基础函数。
2024-02-04 22:29:30 614
原创 C++从零开始(day30)——list学习使用
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于list的基本函数使用list是一个双向带头循环的链表。
2024-02-03 21:17:27 366
原创 C++从零开始(day29)——vector模拟实现2
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于vector的底层构造模拟vector的底层实现和string不同,不是一个指针加两个下标,而是三个指针,而他的size,capacity将由对象函数来推导2.元素访问vector的元素下标访问提供了两个函数,一个是const修饰的,一个是没被const修饰的size,capacity函数的情况很多,需控制
2024-02-02 14:56:56 377
原创 C++从零开始(day28)——vector模拟实现1
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于vector的底层构造模拟。
2024-02-01 20:54:47 356
原创 C++从零开始(day27)——迭代器失效2
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于vector,这篇博客内容紧跟上一篇。
2024-01-31 22:03:17 532
原创 C++从零开始(day26)——迭代器失效1
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于vector。
2024-01-30 23:11:53 324 2
原创 C++从零开始(day25)——日常刷题7
这是关于一个普通双非本科大一学生的C++的学习记录贴在此前,我学了一点点C语言还有简单的数据结构,如果有小伙伴想和我一起学习的,可以私信我交流分享学习资料那么开启正题今天分享的是关于vector的题目。
2024-01-29 23:06:23 373
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人