自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 linux操作系统——进程

进程的三态:—(a.out)—>就绪—(调度)—>执行—(条件不满足)—>阻塞—(条件满足)—>就绪...0-3G,是进程的空间,3G-4G是内核(kernel)的空间,虚拟地址 * 物理内存和虚拟内存的地址。进程:是一个程序执行的过程,会分配内存的资源,CPU的调度。1)一个进程希望复制自己,使父子进程同时执行同的代码段,网络服务中会比较多见。linux中的状态,就绪态,运行态,阻塞态,僵尸态,孤儿态,创建态,终止态。子进程是父进程的副本。孤儿进程:在父进程结束之前,其子进程仍在运行的进程。

2025-01-15 21:31:09 710

原创 C语言——结构体、共用体

/定义变量//定义数组//定义指针可以做函数参数 和 返回值注意:1.同类型的结构体变量间可以相互赋值 例如:s = stu1;2.结构体设计形参时,都设计成指针类型 (可以提高效率)3.如果是一个结构体类型的指针变量,访问结构体成员时,可以使用 -> 指向结构体成员运算符。

2024-12-28 10:57:19 755

原创 C语言——快速排序

步骤5:重复步骤2~4,直到begin 与 end 相遇,将相遇位置上的值与基准位置上的值交换。快速排序的最优时间复杂度和平均时间复杂度为:O(nlog(n)),是最好的情况。步骤6:分别对比基准值小的一半继续排序,对比基准值大的一半继续排序。通过分而治之的方式来将一个数组排序,并使用函数递归的方法。对于平均情况,每一次选择的分界值可以看作是等概率随机的。步骤2:从右向左找第一个比基准值小的值。步骤3:从左向右找第一个比基准值大的值。步骤4:将找到的位置的值交换。最坏的情况为:O(n^2)。

2024-12-27 21:09:02 214

原创 C语言——二分查找

step3: 重复step1 ~ step2 直到找到了,或者是查找的区间已经缩到了没有。调整要查找的区间 到 中间位置的 左一半。调整要查找的区间 到 中间位置的 右一半。step 2.将中间位置上的值 与 要找的值(m)比较。中间位置上的值 > 要找的值 (mid>m)中间位置上的值 == 要找的值。中间位置上的值 < 要找的值。step 1.找到中间位置上的值 mid。实现步骤: 长度n。时间复杂度 O(logN)前提:数据必须是有序的。

2024-12-26 22:03:29 210

原创 C语言——冒泡排序

相邻两个元素两两比较,小的在前大的在后,逐步比较再交换元素的位置,直到整个序列有序。外层循环:控制排序的轮数,每轮结束后,最大元素会“冒泡”到当前未排序部分的最后。内层循环:相邻元素比较并交换。如果arr[j] > arr[j+1],就交换它们的位置。

2024-12-25 21:38:53 257

原创 C语言——选择排序

中选出最小(或最大)的一个元素,存放在序列的起始位置,之后每一轮从未排序的部分中选出最小(或最大)元素,交换到已排序部分的末尾,直到所有元素都被排序。迭代的方式:*begin为起始的位置,*end为结束的位置,再结合数组的特点,可以以此拿到区间内所有的值。内层循环 for (j = i + 1;j++) 遍历未排序的部分,寻找当前最小值的索引。1.初始化:从数组的第一个元素开始,认为该位置是最小值的位置。3.交换:将找到的最小元素与当前考虑的元素交换位置。选择排序是最简单的,但不稳定的排序方法。

2024-12-24 23:07:40 295

原创 C语言——基础学习(数据类型、运算符、表达式)

C语言提供的数据类型:整型、浮点型、字符型、构造类型、指针类型、空类型。

2024-12-23 22:04:37 781

空空如也

空空如也

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

TA关注的人

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