- 博客(30)
- 收藏
- 关注
原创 线程和进程的区别
进程:进程是系统进行的基本单位,每个进程拥有自己独立的内存空间和系统资源线程:线程是系统进行的基本单位,线程是进程的一部分,一个进程可以包含多个线程,这些线程可以共享父线程的内存空间和资源。
2024-07-21 20:07:10
283
原创 排序算法之冒泡排序
冒泡排序想必大家都不陌生了吧!应该都是大家学习的第一个排序算法吧!那么接下来我为大家简单再介绍一个冒泡排序。在数据不优化的情况下,不管是有序还是无序,都是O(N^2)优化情况下: O(N),上述代码是经过优化的。空间复杂度: O(1)
2024-05-04 20:52:19
281
原创 给定一个链表,求入环的第一个节点
这种情况下,slow已经走完很多圈了,但是fast还没有走到入口点的位置,我们又该如何应对,请看下面的解释。给定一个链表,返回链表开始入环的第一个节点。如果链表无环,则返回 NULL,最后有力扣题的链接。因为fast一次走两步,slow一次走一步,下面是一个数学问题,把分别对应的路程带入然后化简即可。首先得判断是否成环,如果是环那么在找入口点,如果不是环,那么返回null。但是这里又出现了新的问题,如果环很小我们应该怎么办呢?答:X+NC+(C-Y) //N代表的是圈数。答:X+C+(C-Y)
2024-03-30 14:57:36
304
原创 抽象类和接口
本小节我们将了解,如何将一个类定义为抽象?定义抽象类有什么用?抽象方法的定义格式如下:abstract 返回值类型 方法名称(参数);我们使用关键字new定义抽象类的作用:当定义一个类时,常常需要定义一些成员方法描述类的行为特征,但有时候这些方法的实现方式是无法确定的。例如,前面在定义Animal类时,shout()方法用于描述动物的叫声,但是不同的动物叫声是不同的,因此在shout()方法中无法准确地描述动物的叫声,所以我们就需要用抽象类来满足这种需求,并且抽象类能够实现代码的复用。
2024-03-05 23:53:35
363
原创 详解Java运算符
在Java中运算符可以分为以下:算术运算符(+ - * /)关系运算符(< > == )逻辑运算符,位运算符,移位运算符以及条件运算符等。
2024-02-02 23:57:52
985
1
原创 关于C语言的编译和链接
语法:int main()int a = 10;return 0;}一般我们都是这样写的int main()return 0;这样所有MAX的地方都被替换成了10#define reg register //为 register这个关键字,创建一个简短的名字可以用这种方法将代码中的register全部替换成reg,不用一个一个单独修改// 如果定义的 stuff过长,可以分成几行写,除了最后一行外,每行的后面都加一个反斜杠(续行符)。切记:定义#define的时候,最后最好别加;
2024-01-19 21:18:53
1048
1
原创 结构体内容介绍(内存对齐)
int x;int y;}p1;//声明类型的同时定义变量p1//定义结构体变量p2声明了一个名为 p3 的 struct Point 类型变量,并同时赋予了它的 x 成员变量值为 10,y 成员变量值为 20。int data;//结构体嵌套初始化//结构体嵌套初始化。
2024-01-03 00:35:51
988
1
原创 在C语言中关于整数和浮点数在内存中的存储
整数在内存中通常以二进制格式来表示,有符号整数通常采用补码的方式进行存储对于整数来说,其原码、反码、补码都是相同的,直接将该整数转换成二进制形式存入内存即可不过我们需要注意的是,不同长度的整形类型(char,short,long,longlong等)占用不同的内存空间,且在不同系统上具体的字节数也有可能不同。
2023-12-30 22:12:51
490
1
原创 关于for循环的分数相加减
接下来可以计算计算1/1-1/2+1/3-1/4+......+1/99-1/100的值了。计算1/1-1/2+1/3-1/4+......+1/99-1/100的值,并计算结果。我们可以先把问题简单化,先计算1/1+1/2+......+1/100的结果。写出的代码是这样的。
2023-10-21 23:25:22
72
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人