- 博客(23)
- 收藏
- 关注
原创 数据结构篇:线性表的另一表达—链表之单链表(下篇)
之前是讲述了单链表的头插尾插,头删尾删函数部分,并且揭示了链表相对于顺序表的优势性。更重要的是对于next的理解和对二级指针的理解,为什么在单链表中用一级指针报错而要用二级指针,其实简单的说就是看会不会改变指针指向。
2025-04-30 22:47:42
1067
14
原创 数据结构篇:线性表的另一表达—链表之单链表(上篇)
那么我们就会引入链表,链表相较于顺序表到底有哪些优势?又有哪些劣势,本次blog带你一探究竟,但是可以说,链表和顺序表没有那个更好,只是在实际应用中由于特性不同,所以使用场景不同。试想一下,如果这两个有哪个更好的说法,那不是另外一个要被替代了,很显然不是。
2025-04-09 21:37:16
1043
9
原创 数据结构篇:通讯录的底层竟是顺序表?(上)
本章内容并不晦涩难懂,理解内存动态管理,了解通讯录就可以。其实顺序表的结构和通讯录撰写的结构差不多,可以说通讯录的底层实现逻辑就是顺序表。只是通讯录多了个框架。每篇文章都强调两个东西,调试和画图,不画图的话是不好写出来的,写出来了也是事倍功半。
2025-03-30 21:25:12
1137
15
原创 数据结构篇:空间复杂度和时间复杂度
本篇文章数据结构的开篇,也是对C语言部分结尾的继承,属于是承上启下。什么是数据结构,什么又是算法。这两者为什么紧密相连?时间复杂度和空间复杂度是贯穿整个数据结构的内容。重要的是画图,调试!!!
2025-03-24 22:59:16
1205
17
原创 动态内存管理的了解及使用
从内存区域上来看,一般的静态变量,比如int a;char c;int *p1;char *p2;double d;诸如此类都是在栈空间分配的,定义是不会变的,固定死的,使用完后由系统自动释放空间。而动态内存,是在堆区开辟的,由用户开辟,用户释放,系统不会主动进行释放操作。可以根据实际需求对内存分配进行扩大。
2025-03-06 18:53:53
1038
3
原创 通讯录的优化之存储信息部分(附完整代码)
承接上文,本篇是通讯录三部曲的最后一个部分,前面写了作为一个通讯录的基本部分增删查改和显示,但由于存在很多不足,所以上一篇进行了扩容部分的优化,那么这次要进行的是结束程序后的保存信息以及再一次运行程序时加载上一次保留信息部分。对一个简单的通讯录进行完善。
2025-02-27 18:05:39
956
1
原创 通讯录的优化之扩容部分
通讯录的博客上次写了一个基础版,能够基本实现增删查改和在查看(显示)中进行排序了,但是仅有这些我认为是不太够的,所以本次对于通讯录的优化是检查扩容。
2025-02-19 21:00:00
1900
2
原创 对指针的深入运用-通讯录的初步实现
手机里的通讯录,是能够存放联系人的信息,包括姓名,性别,地址,电话号码,也可以加上性别。而且手机中的通讯录肯定有增删查改的功能,而且在list里是按照顺序排序的,可以按姓名的顺序来排,也可以选择其他的方式来排序。本次就来简单实现一下通讯录的基本功能。
2025-02-14 20:26:50
731
1
原创 对sizeof 和strlen案例题的分析
上文主要讲述了sizeof和strlen在不同环境(不同数组)下的对比,这次更进一步,把理论实践化,用具体的笔试题目来强化对指针的运用度。
2025-02-07 10:37:25
622
1
原创 指针的进化—sizeof和strlen对比(字符串和字符数组的区分)
如果你对各个数组的内容存放是什么没有个清晰的概念,对指针偏移之后的数量算不出来或者模棱两可,那么本篇就来详细介绍sizeof和strlen来具象化的显示数组的内容存放了多少内容,偏移量变化后的变化,这个数组进行运算后会不会构成越界访问......看完这篇你就懂了。
2025-02-01 20:13:56
2067
原创 回调函数的应用(简单计算器的实现与qsort排序模拟)
承接上篇博客指针的进化—各类指针的概念的结尾,函数指针和函数指针数组的介绍,本文将详细描述如何使用函数指针数组来实现计算器,以及用回调函数来改造计算器和模拟qsort排序。干货满满!
2025-01-19 21:20:29
823
1
原创 了解初级指针
在计算机内存中,每个字节占用一个地址,在C语言中,为了能够方便快速的找到地址,产生了一个叫指针的名词,它指代的就是内存中的地址编号,
2024-12-03 14:50:57
1198
原创 函数的总结:递归与嵌套,递归思想,递归综合症?
本次内容是本人反复敲,反复出错后的经验贴,希望对还没遇到问题的有个提示作用,对有问题的能帮助到大家,程序猿的世界是奇妙的,需要不断去实践,才能出真知。
2024-11-01 17:42:35
1992
1
原创 随笔:对c语言分支循环的了解
if作为判断语句,表达式的0为假,不执行,表达式判断为非0才能继续执行。do while 循环则是先直接进⼊循环体,执⾏循环语句,然后再执⾏ while 后的判断表达式,表 达式为真,就会进⾏下⼀次,表达式为假,则不再继续循环。至于for循环和while循环的break,就是中断语句,跳出循环的语句,continue语句,跳过本次循环,进入下一次,具体我也描述的不是很清楚,就不写了。最后提醒一下刚学c的朋友,其实实际操作写代码中,需要把for,while,if,语句互相结合才能解决问题,写出题目。
2024-10-16 19:57:41
355
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人