甜甜向上呀
码龄1年
关注
提问 私信
  • 博客:23,069
    动态:1,009
    24,078
    总访问量
  • 22
    原创
  • 21,870
    排名
  • 356
    粉丝
  • 24
    铁粉
  • 学习成就

个人简介:流水不争先 争的是滔滔不绝

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:河南省
  • 加入CSDN时间: 2023-09-06
博客简介:

2301_79633555的博客

查看详细资料
  • 原力等级
    成就
    当前等级
    4
    当前总分
    519
    当月
    17
个人成就
  • 获得687次点赞
  • 内容获得218次评论
  • 获得599次收藏
  • 代码片获得146次分享
创作历程
  • 21篇
    2024年
  • 1篇
    2023年
成就勋章
TA的专栏
  • 数据结构
    7篇
  • 错题集
    1篇
  • c++
  • C语言
    13篇
  • OJ练习
兴趣领域 设置
  • 编程语言
    c++c语言
  • 数据结构与算法
    算法数据结构
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

【数据结构】快排之三路划分

在之前快排是排完序把key放在中间,左边比key值小,右边比key大,跟key相等的值在哪里并没有规定,跟key相等的值可以在左边,也可以在右边。因为假如cur没有遇见比key大的值,right没有--,那么cur与right在相同位置时,并不能确定right所指向的值是否小于key。但是,有些场景下hoae和lomuto(前后指针法)还是适应的不是很好,就是当数组中有大量重复数据时,该场景下性能是有些退化的。cur指向的值与left位置的值进行交换,然后left++,cur++核心思想是把数组中的数据。
原创
发布博客 2024.11.13 ·
437 阅读 ·
4 点赞 ·
0 评论 ·
4 收藏

知其然,更要知其所以然(〃'▽'〃)

发布动态 2024.11.13

【数据结构】快速排序(三种实现方式)

三种实现快排的方式
原创
发布博客 2024.10.23 ·
1025 阅读 ·
21 点赞 ·
0 评论 ·
19 收藏

【2022统考真题】计算时间复杂度

对求时间复杂度进行了详细分析
原创
发布博客 2024.10.14 ·
698 阅读 ·
7 点赞 ·
1 评论 ·
11 收藏

【数据结构】希尔排序(缩小增量排序)

引入希尔排序的原因 思路分析 gap分组问题 代码实现 易错提醒 排序小tips
原创
发布博客 2024.09.08 ·
773 阅读 ·
21 点赞 ·
6 评论 ·
8 收藏

【数据结构】直接插入排序

基本思想,思路分析,代码实现,易错提醒,时间复杂度分析
原创
发布博客 2024.09.06 ·
473 阅读 ·
8 点赞 ·
1 评论 ·
8 收藏

【数据结构】栈的定义与实现(附完整运行代码)

栈的定义,顺序栈链栈的比较,栈的实现
原创
发布博客 2024.06.25 ·
1928 阅读 ·
33 点赞 ·
5 评论 ·
23 收藏

【数据结构】比较顺序表和链表的区别(优缺点),细讲CPU高速缓存命中率

顺序表链表的比较 ,主存和本地二级存储,寄存器和三级缓存,顺序表缓存命中率,链表缓存命中率
原创
发布博客 2024.06.24 ·
1391 阅读 ·
28 点赞 ·
7 评论 ·
23 收藏

【数据结构】时间复杂度

时间复杂度的概念,大O渐进表示法,计算时间复杂度步骤,常见时间复杂度举例,最好,最坏和平均情况的时间复杂度,时间复杂度优劣对比
原创
发布博客 2024.06.20 ·
2140 阅读 ·
30 点赞 ·
3 评论 ·
39 收藏

【C语言】联合(共用体)

联合体的声明,变量的创建,特点,联合体的大小计算,判断大小端,联合体的优缺点
原创
发布博客 2024.06.12 ·
1092 阅读 ·
22 点赞 ·
6 评论 ·
20 收藏

【C语言】位段(结构体实现位段)

位段的定义,声明,内存分配,在内存中的存储方式,位段的优点,位段的跨平台问题,位段的应用,位段使用的注意事项
原创
发布博客 2024.06.03 ·
1509 阅读 ·
29 点赞 ·
12 评论 ·
49 收藏

【C语言】结构体

结构体的声明,结构体变量的创建和初始化,结构的特殊声明,结构体的自引用,结构体成员的访问,结构体传参
原创
发布博客 2024.05.30 ·
896 阅读 ·
18 点赞 ·
8 评论 ·
22 收藏

【C语言】指针(三)

介绍了字符指针,数组指针,二维数组和数组名的理解,二维数组传参,函数指针及其使用,函数指针数组,转移表的实现
原创
发布博客 2024.05.21 ·
1337 阅读 ·
41 点赞 ·
26 评论 ·
37 收藏

【C语言】指针(二)

传值调用和传址调用,数组名的理解,通过指针访问数组,一维数组传参的本质,指针数组,指针数组模拟实现二维数组
原创
发布博客 2024.05.15 ·
1012 阅读 ·
54 点赞 ·
22 评论 ·
37 收藏

【C语言】指针(一)

内存,指针变量,指针类型的意义,野指针,指针运算,二级指针
原创
发布博客 2024.05.13 ·
926 阅读 ·
63 点赞 ·
22 评论 ·
56 收藏

【C语言】static关键字用法

代码2:运行结果可知,被static修饰过后的i,它的值是有累加效果的,在头一次进入test函数后,创建了i后,出函数是不会被销毁的。如果一个函数被static修饰,外部链接属性就变成了内部链接属性,其它源文件(.c)就不能再使用该函数,只能在自己所在的源文件内部使用。使用建议:如果一个全局变量,只想在所在的源文件内部使用,不想被其他文件发现,就可以使用static修饰。使用建议:一个函数只想在所在的源文件内部使用,不想被其他源文件使用,就可以使用static来修饰。外部链接属性就变成了内部链接属性,
原创
发布博客 2024.05.07 ·
908 阅读 ·
53 点赞 ·
30 评论 ·
41 收藏

【C语言】函数

本来可以不用函数的声明,函数的定义利用函数的外部链接属性也可以实现,但分开写可以把函数的实现这个模块变成静态库,静态库是二进制的,是看不懂的。我们可以把函数想象成小型的一个加工厂,工厂得输入原材料,经过工厂加工才能生产出产品,函数也是一样的,函数一般会输入一些值(可以是0个,也可以是多个),经过函数内的计算,得出结果。因为C语言编译器对源代码进行编译的时候,是从第一行往下扫描的,当遇见Add函数调用的时候,并没有发现前面有Add的定义,就会报出上述的警告。同时库函数的质量和执行效率上都更有保证。
原创
发布博客 2024.05.06 ·
1472 阅读 ·
34 点赞 ·
7 评论 ·
40 收藏

【C语言】字符串函数

只不过程序启动的时候errno是0,表示没有错误,当我们在使用标准库中的函数的时候发生了某种错误,就会让对应的错误码,存放在errno中。打印的时候,先打印传给perror的字符串,然后打印一个冒号,紧接着打印一个空格,最后打印错误码对应的错误信息。如果source指向的字符串的长度小于num的时候,只会将字符串中到\0的内容追加到destination指向的字符串末尾。因为\0是字符串结束的标志,此处追加5个字符,world在56789的位置,如果追加上一个\0,那么[10]的位置就是\0。
原创
发布博客 2024.04.29 ·
1642 阅读 ·
65 点赞 ·
20 评论 ·
43 收藏

【C语言】进制转换

2进制和10进制是类似的,只不过2进制的每一位的权重,从右向左分别是:2^0,2^1,2^2 .......如:2进制的01101011,换成16进制为:0x6b (十六进制位的数字,以0x开头)如:二进制的01101011,换成8进制为:0153。我们知道,数值是由不同的进制表示的,可以用二进制、八进制、十进制、十六进制表示。可以先将10进制转换为2进制,2进制再转换为16进制。先将该进制转换为2进制,再转换为我们想要的进制。分别是:10^0,10^1,10^2。2进制的数字每⼀位都是由0~1组成。
原创
发布博客 2024.04.26 ·
400 阅读 ·
27 点赞 ·
9 评论 ·
15 收藏

【C语言】动态内存管理

原因:free的意思是把空间的使用权限还给了操作系统,但是p还记得malloc时候的地址,还指向那块不属于自己的空间,所以一旦free完之后,p就是野指针了,所以把p置空,p=NULL,避免出现问题。当我们申请的内存空间空间过大或者过小的时候,为了合理使用内存,我们可以使用realloc函数,用来对动态开辟的内存的大小做出灵活的调整。calloc函数开辟空间的时候,它开辟好空间之后会把内容初始化为0,然后再把这块空间的。当是情况2的时候,在堆空间上找一块新的连续可用的空间,旧的空间释放掉,
原创
发布博客 2024.04.25 ·
936 阅读 ·
36 点赞 ·
12 评论 ·
34 收藏
加载更多