自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 数据结构-------链表

链表不难,只要掌握了基本操作接下来的学习会简单很多。重要的是不要直接操作头节点,而是建立指针变量来操作链表!人生如棋。棋盘上的胜与负,荣与辱,喜与悲,的确是人生或亮或暗色彩的折射。只有自己担当了一切的棋局,才有意思;只有自己担当了一切的人生,才是真正有价值的。成为自己的最高评判者,不在乎他人的喋喋不休,才能以一个完整的人的身份,享受胜利,荣辱和喜悦。

2022-09-02 21:21:22 275

原创 C++进阶(一)

尽可能用enum、const、inline替换宏定义。但是要切记,现在的C++并不能做到完全剔除宏定义,该用的时候还是要用。inline主要是替换宏函数。3.14宏定义在编译期间会被全部替换掉,也就是说,在编译期间所有的PI都会被替换成3.14,那么我们使用了多少次PI就会占用多少个3.14的存储空间,而且,如果 int a = PI,在某些编译器上的警告会是:隐式类型转换3.14,而不会提示隐士类型转换 PI,如果这个PI使我们自己定义的还好,我们可以找到它,如果是别人在别的文件中定义的呢?...

2022-08-29 17:46:11 294 1

原创 猿创征文|跌跌撞撞的C++成长之路

你若是想要拥有未曾拥有过的东西,就必须要做未曾做过的事。

2022-08-26 22:48:39 498 1

原创 C++拿来主义--- 类的组合与继承

类的基础概念类的继承和组合为面向对象的程序设计提供了代码复用的可能性,奉行拿来主义。类的组合较为简单,掌握了如何初始化那么应用就可以得心应手的使用了。类的继承主要是插播知识点那一块比较抽象,建议多体会,多找找资料,看看书等等,我的水平肯定和作者比不了,还有就是构造函数和虚函数,值得注意。......

2022-08-25 20:25:48 486 3

原创 C++面向对象程序设计----类(基础概念)

早期软件开发程序的模式是:程序 = (算法)+ (数据结构),()代表一个整体,也就是说最早的程序是把数据结构和算法分开的。一般来说,算法只能适合于特定的数据结构,比如说算法是挤牛奶,这只对母牛起作用,如果你把这个算法应用于公牛,无异于让公牛本不富裕的生活雪上加霜,哈哈,开个玩笑。后来,软件开发人员逐渐意识到了这个问题,调整了程序开发的模式,演化成:程序 = (数据结构 + 算法),而这个()的整体被称作对象。......

2022-08-24 11:04:41 375

原创 C/C++ 指针剖析

不知从何时起对你一眼万年,从此,每一天被赋予了特别的意义。时隔多年,依然挥之不去是你------指针!!!本篇中几乎数据类型只用了int ,但是float、double等也是可以的。C/C++语言拥有在程序运行时获得变量的地址和操作地址的能力,这种用来操作地址的特殊类型变量被称作指针。翻译翻译什么tmd叫tmd指针!变量或常量的指针存储的数据是 :对应的变量或常量在内存中的地址。

2022-08-21 11:47:51 323 6

原创 STL库vector容器使用初探

简单来说,vector容器就是升级版的数组,无需人为干扰,它的长度可以根据存入、删除数据操作而增加或减小。以下称为向量。

2022-08-17 21:45:08 96 4

原创 C与C++之结构体

任何事物的存在皆有其不可被代替的意义,那么在C和C++中结构体存在的意义是什么呢?需要用到关键词 struct//标准的结构体定义: struct Student //名为Student的结构体 {int age;//成员一:年龄 char name [ 20 ];//成员二:名字 char tele_number [ 11 ];//成员三:电话号码 };//分号!!!!!一定要有//给int起一个别名叫做 INT。//下面的两种变量定义具有相同效果。

2022-08-16 16:55:40 516 8

原创 leetcode 347.前k个高频元素 哈西表的使用及按值排序方法。

​​学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:想系统/深入学习某技术知识点…一个人摸索学习很难坚持,想组团高效学习…想写博客但无从下手,急需写作干货注入能量…热爱写作,愿意让自己成为更好的人……**...

2022-08-15 20:26:54 74 4

原创 经典排序算法之快速排序法

​​学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:想系统/深入学习某技术知识点…一个人摸索学习很难坚持,想组团高效学习…想写博客但无从下手,急需写作干货注入能量…热爱写作,愿意让自己成为更好的人……...

2022-08-13 18:46:48 118 4

原创 数据结构(一):线性表的实现方法之一 顺序表

线性表是具有相同特性的数据元素的一个有限序列。

2022-08-08 20:54:48 79

原创 如何在一个数组中找到三个和为定值的不重复元素? 双指针解决 leetcode 15.三数之和

学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:想系统/深入学习某技术知识点…一个人摸索学习很难坚持,想组团高效学习…想写博客但无从下手,急需写作干货注入能量…热爱写作,愿意让自己成为更好的人……**.........

2022-08-06 20:55:08 131

原创 如何用二分法搜索、查找旋转数组中是否含有某个(目标)值? leetcode 81.搜索旋转排序数组

​​学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您:想系统/深入学习某技术知识点…一个人摸索学习很难坚持,想组团高效学习…想写博客但无从下手,急需写作干货注入能量…热爱写作,愿意让自己成为更好的人……...

2022-08-02 21:15:27 74

原创 我与csdn

​​学习的最大理由是想摆脱平庸,早一天就多一份人生的精彩;迟一天就多一天平庸的困扰。各位小伙伴,如果您想系统/深入学习某技术知识点…一个人摸索学习很难坚持,想组团高效学习…想写博客但无从下手,急需写作干货注入能量…热爱写作,愿意让自己成为更好的人……**...

2022-08-01 11:05:46 100

原创 第三章.Linux的文本/代码编辑器vim的使用

除具有编辑文本的功能外,vim有许多与编译器类似的功能,高亮显示关键字,代码补全等,而且vim不限制语言,无论你使用的是C还是java,又或者是shell等语言,均可以享受到vim强大功能的便利,因此vim受到许多程序员的青睐。......

2022-07-29 21:59:44 566

原创 滑动窗口 Leetcode 76.最小覆盖子串(困难) 76.76. MinimumWindow Substring (Hard)

中,然后利用头尾指针start和end分别指向s="XX⋯XAxBxCXXXX"的头和尾,然后进行收缩,直到start和end指向的字符存在于t_map中(也就是指向了t中包含的字符),也就是start指向了s中的A,end指向了s中的C;@官方的优化要求如果s="XX⋯XAxBxCXXXX",t="BAC",那么要把s预处理成s=“AxBxC”就要先把t中出现的字符和频率统计出来存入t_map(输入s="a",t="a"所有字符的子串,则返回空字符串。...

2022-07-28 15:07:36 90

原创 如何判断链表中是否存在环?Floyd判圈算法 leetcode刷题笔记 142. 环形链表 II

此时令fast指针回到起点,速度降为1个单位(和slow指针速度相同),slow指针继续前进,当fast指针走过M个单位时,slow指针共走了i+M个单位,而i是C的整数倍,所以slow指针和fast指针恰好在环路的起点link处相遇,也就找到了环路的起点link。@相遇后,令slow指针停止前进,fast指针以一个单位的速度继续前进,直到slow指针和fast指针再次相遇,那么fast指针走过的长度就是环路的长度。注接下来以链表为例!.....................

2022-07-26 20:47:21 245

原创 leetcode刷题笔记 763.划分字母区间(中等)

同一个字母只能出现在同一个片段中,还要划分出尽量多的字符串数量,那么每个字母最后一次出现的位置,就有可能是划分字符串的位置,(例子中两次划分的位置是a和e最后出现的位置)在遍历字符串的过程中,通过比对已经遍历的字符最后出现的位置,位置最靠后的一定是截取端,(比如第一个字符串中,字母a的最后出现的位置是s[8],s[0]到s[8]之间包含的字母最后出现的位置都在s[8]之前)并且前一个字符串的结尾是下一个字符串的开头(s[8]是第一个字符串的结尾,s[9]是下一个字符串的开头)。输出[9,7,8]......

2022-07-26 06:21:57 81

原创 第一章.搭建一个linux环境(虚拟机方式),搭建必要的C++编译环境。

1.2.1到1.2.3、1.4.1、1.4.2都可以选择性的安装。我在b站上找了一个写的不错,直接链接。

2022-07-25 19:08:39 468

原创 第二章.Linux文件目录相关命令(常用)

egmkdir-pproject1/src先创建一个project1文件夹,在project1文件夹中再创建一个src文件夹。egls-aproject列出project文件夹中的文件(夹)。(1)-l单列输出,每一列输出一个文件(夹)名及其相关属性,较为详细。(2)-a列出所有文件,包含以“.”开头的文件。(3)-f按照文件(夹)在磁盘上的存储顺序输出。(2)-b与-n相比,把文件中的空行去掉了。............

2022-07-25 19:00:03 209

原创 leetcode刷题笔记 452. Minimum Number of Arrows to Burst Balloons (Medium) 452.用最少数量的箭引爆气球(中等)

所以,只需要把气球按照右边界升序排列,确定第一支箭的位置后(第一个气球的右边界,假设坐标是x1),就可以把其他右边界大于x1,左边界小于x1的气球全部穿过,剩下的气球重复操作就可以了。第二种是两个#if0中的内容,自定义函数必须是static类型的,因为sort()函数要求参数是静态的,我个人认为应该是这种方式运行速度更快,我也翻阅了一些其他人的博客也是这么说,但是在leetcode上检验时却是第一种方式运行速度快些,将近100ms的领先。说明符有两种第一种=不允许改变语句体外定义的变量的值;.......

2022-07-24 15:00:30 197 1

原创 leetcode刷题笔记 605. Can Place Flowers (Easy) 605.种花问题

.每当num==3(出现了连续的三个0)时,count的值加一,这时num的值是不归零的,而是要设置为1(这是我认为最重要的点),因为第三个0可以参与到后面的0的计数中,比如数组是010000010,种最多的花后变成010101010,也就是5个连续的0可以种2盆,而不需要6个0。既然花不能种在相邻的地块上,那么每有三个相邻的空地则可以种植一盆花,把问题转化为遍历数组中三个相邻的0,每有一组则可以种植一盆,以num为相邻的0的数目,count为可以种植的花的盆数。但是出于习惯我复制粘贴上了)........

2022-07-24 10:25:56 184 1

空空如也

空空如也

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

TA关注的人

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