- 博客(5)
- 收藏
- 关注
原创 选择排序详解
摘要:选择排序通过将数组分为已排序和未排序区间,每轮从未排序区间找到最小值与首个元素交换。时间复杂度始终为O(n²),空间复杂度O(1),属于不稳定排序。其核心步骤包括标记最小值下标、交换元素和扩大已排序区间。相比冒泡排序交换次数更少,适合小规模数据排序。示例代码展示了C语言实现过程,通过6元素数组演示了具体排序步骤。
2025-12-26 16:23:10
62
原创 预处理详解
本文详细介绍了C语言预处理的相关知识,主要包括:1.预定义符号如__FILE__、__LINE__等的使用;2.#define定义常量和宏的语法及注意事项,强调宏替换规则和与函数的区别;3.#和##操作符的作用;4.命名约定和#undef指令;5.条件编译指令的多种形式。文章通过丰富示例展示了预处理在实际编程中的应用,帮助读者深入理解预处理阶段的工作原理和技巧。
2025-12-26 10:40:05
875
4
原创 C语言中的文件操作详解
C语言文件操作摘要:本文介绍了C语言中文件操作的基本概念和应用。主要内容包括文件类型(程序文件和数据文件)、文件指针、文件的打开关闭函数(fopen/fclose)以及顺序读写函数(fputc/fgetc/fputs/fgets/fprintf)。重点讲解了二进制文件和文本文件的区别,并通过代码示例演示了如何读写文件数据。文章还解释了标准输入输出流的概念,以及文件指针FILE结构体的作用。最后详细说明了各种文件操作函数的使用方法和注意事项。
2025-12-17 11:57:40
1019
2
原创 C语言中的动态内存管理
但是有时候我们需要的空间⼤⼩在程序运⾏的时候才能知道,这就需要用到动态内存开辟。,它的参数是需要开辟内存的字节大小,返回类型是void*,返回的是这片空间的。2. 数组在申明的时候,必须指定数组的⻓度,数组空间⼀旦确定了⼤⼩不能调整。当我们申请完空间后,这些空间我们不用时需要还回去,那如何去还呢?C语言提供了了一个函数free,专门用来动态内存的释放和回收,它的参数是需要。,那为了合理的使⽤内存,我们⼀定会对内存的⼤⼩做灵活的调整。这是直接创造变量的方式来开辟空间,但是这样开辟的空间有几点问题。
2025-12-15 21:21:56
658
6
原创 C语言中的“单身狗”问题
本文介绍了利用按位异或操作解决C语言中的"单身狗"问题。首先通过简单案例(单个单身狗)演示异或性质的应用,然后扩展到找出两个单身狗的情况。核心思路是利用异或结果中的1位将数组分组,分别异或得到两个目标数字。文章提供了完整的代码实现,并解释了关键步骤的原理,展示了位运算在解决此类问题中的高效性和巧妙性。
2025-12-11 18:15:21
555
3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅