自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【一步一步了解Java系列】:对这个系列的总结以及对缺漏内部类知识的补充

成员内部类成员内部类是定义在另一个类中的类。它可以访问外部类的成员变量和方法,包括私有的。它是一个静态成员,因此不能直接访问外部类的非静态成员。局部内部类局部内部类是在方法内部定义的类。它的作用域仅限于定义它的块内。它不能访问外部类的成员变量,但可以访问外部类的静态成员变量和方法。匿名内部类匿名内部类是没有名称的内部类。通常用于实现接口或继承抽象类,且只需要一次使用。它不能有构造器,但可以访问外部类的成员变量和方法,包括私有的。静态嵌套类。

2024-07-01 15:39:30 826 47

原创 ONLYOFFICE 桌面编辑器8.1---一个高效且强大的办公软件

ONLYOFFICE 桌面编辑器经过不断的更新换代现在迎来了,功能更加强大的ONLYOFFICE 桌面编辑器8.1是一个功能强大的办公套件,专为多平台设计,包括Windows、Linux和macOS。它提供了一套全面的办公工具,包括文档处理、电子表格和演示文稿编辑功能,适合个人用户和企业使用。下面我们将着重介绍一下ONLYOFFICE 桌面编辑器8.1这次更新后它比以往版本升级了那些功能?它的强大功能体现在哪?以及如何安装。

2024-06-24 23:05:39 1156 13

原创 【一步一步了解Java系列】:认识异常类

使用的较多的异常类往往是我们自己定义的比较多,那么如何自定义异常类呢,下面我们就来讲讲如何自定义异常类。int a=0;if(a==0){如上我们只需让自己创建出的类继承Exception或其它异常类即可,这样这个类也是一个异常类了。然后我们在需要抛出异常时,抛出自己定义的异常即可。也可以用try-catch进行使用解决自己定义的异常。** 自定义异常通常会继承自 Exception 或者 RuntimeException **

2024-06-22 09:22:15 1220 34

原创 【机器学习】大模型驱动下的医疗诊断应用

传统的医疗诊断主要依赖医生的经验和专业知识,但随着医疗数据的爆炸式增长和机器学习技术的不断进步,机器学习在医疗诊断中的应用逐渐成为研究热点。3. 在肿瘤治疗中,根据患者的基因特征,模型可以协助医生制定出个性化的治疗方案,例如选择最适合患者基因特点的药物、确定最佳的治疗剂量等,从而显著提高治疗效果,减少不必要的副作用。通过分析大量的药物数据和生物数据,可以加速药物研发的进程,提高药物研发的成功率。2. 通过对海量基因数据的学习和挖掘,模型能够发现特定基因与疾病之间的关联关系,为精准医疗的实施提供重要的支撑。

2024-06-22 09:19:12 1311 37

原创 【机器学习】大模型环境下的应用:计算机视觉的探索与实践

通过在一个大型数据集上训练好的模型,可以将其用于小规模数据集的任务,从而减少训练时间和资源消耗,同时提升模型的泛化能力。传统方法主要依赖于手工设计的特征提取器和分类器,但随着深度学习方法的兴起,特别是卷积神经网络的出现,计算机视觉的性能得到了显著提升。判别器是另一个神经网络,它接收一张图像作为输入(真实的或由生成器生成的),并输出一个概率,表示输入图像来自训练数据(真实图像)的概率。在训练过程中,生成器和判别器交替训练,以便不断提升生成器生成逼真图像的能力,并提高判别器准确识别生成器生成图像的能力。

2024-06-17 08:43:06 2113 58

原创 【一步一步了解Java系列】:认识String类

在Java中String中,==的比较对于不同类型的数据比较方式是不同的,对于基本类型是比较其中的值是否相等,对于引用类型是进行比较引用的地址是否相等。请注意,StringBuffer 是Java 1.0 引入的,随着Java的发展,一些新的API和特性可能已经出现,但 StringBuffer 仍然是处理多线程字符串操作的可靠选择。注意:String是一个引用类型, 内部并不存储字符串本身,在String类的实现源码中,String类实例变量如下: 在现在的jdk中是一个byte类型的数组进行储存的。

2024-06-17 08:42:42 1070 25

原创 【一步一步了解Java系列】:探索抽象类与接口的秘密

在这个例子中,Vehicle 是一个接口,定义了一个抽象方法 drive(),一个默认方法 honk() 和一个静态方法 checkVehicle()。接口在大多数是一种过程,它只需要完成一个动作,比如walk,但是不同的对象有不同的走法,鸟是飞,蛇是爬,狗是走,这都是各不相同的,但是他们都有walk的行为,这时就需要到接口。2.在抽象类中我们可以定义抽象方法也可以定义普通的实例方法方法,但是想定义抽象方法必须在抽象类中定义。在定义类的时候在前面加上abstra,那么这个类就是抽象类简单示范一下。

2024-06-11 15:39:21 962 4

原创 【一步一步了解Java系列】:重磅多态

当我们创建 Dog 类的实例并将其向上转型为 Animal 类型时,调用 sound() 方法会执行 Dog 类中重写的方法,而不是 Animal 类中的原始方法。由于向上转型是安全的,编译器允许这样做,并且当我们调用 makeSound() 方法时,将调用 Dog 类中重写的方法。在Java中,向上转型(Upcasting)和向下转型(Downcasting)是面向对象编程中多态性的一部分,它们允许我们处理不同类型的对象,但以更通用的类型进行操作。向上转型是安全的,因为子类是父类的特化。

2024-06-05 17:12:05 1702 60

原创 【一步一步了解Java系列】:子类继承以及代码块的初始化

继承的概念以及继承存在的意义。

2024-06-01 09:07:27 1782 68

原创 【一步一步了解Java系列】:类与对象的联系

在上方代码中我们定义了一个Student类,然后里面的成员变量有名字,那么我们还定义了一个成员方法setName,然后我们在main方法中实例化了3个对象,然后我们调用了setName方法,给每个对象起个名字。只要加上this后代码就会知道this.name指的是对象的name,单单一个name就是成员变量的name,这样就可以正确的赋值方法。emmm,在Java中有这么一句话,Java中任何东西皆可为对象,猫,狗,人,猴,洗衣机,手机,电脑,键盘等等。类是用来描述一个对象的,对象是一个真正存在的实体。

2024-05-29 08:36:28 1749 65

原创 【一步一步了解Java系列】:何为数组,何为引用类型

大家也看到第二种比第一种的写法较为繁杂,但效果都是一样的,所以我们。

2024-05-25 10:23:17 833 11

原创 【一步一步了解Java系列】:Java中的方法对标C语言中的函数

在我看来方法就是将一些代码封装起来的一片代码块,这个代码块可以完成一个单独的功能比如:加法,加法,除法等。再比如:面向对象时有个对象的“说话”功能。是能够模块化的组织代码(当代码规模比较复杂的时候).做到代码被重复使用, 一份代码可以在多个位置使用.让代码更好理解更简单.直接调用现有方法开发, 不必重复造轮子.System.out.println(year + "年是闰年");} else {System.out.println(year + "年不是闰年");

2024-05-19 14:16:18 1504 51

原创 【一步一步了解Java系列】:探索Java逻辑控制

喜欢的一句话: 常常会回顾努力的自己,所以要为自己的努力留下足迹。作者:小闭在 Java 中,逻辑控制主要有以下几种结构:顺序结构是最简单,也是最直观的一种结构。就是一句一句的执行代码,没有循环语句,也没有if语句。

2024-05-16 13:25:01 868 10

原创 【一步一步了解Java系列】:了解Java与C语言的运算符的“大同小异”

2. 关系运算符:用于比较两个值的关系,如等于、不等于、大于、小于等。1. 算术运算符:用于执行基本的数学运算,如加法、减法、乘法、除法和取模(取余)等。在计算机中数据的储存都是以0,1的形式进行储存,而按位或 | 就可以让两个数据进行运算.5. 自增和自减运算符:用于增加或减少变量的值,例如 ++ 表示自增,-- 表示自减。在计算机中数据的储存都是以0,1的形式进行储存,而按位与 &就可以让两个数据进行运算。2. 比较操作:比较运算符(如>、<、>=、<=等)用于比较两个值的大小关系。

2024-05-12 18:14:42 1677 64

原创 【一步一步了解Java系列】:探索Java基本类型转换的秘密

​​喜欢的一句话: 常常会回顾努力的自己,所以要为自己的努力留下足迹。作者:小闭。

2024-05-06 22:24:13 2120 61

原创 【C语言的完结】:最后的测试题

​喜欢的一句话: 常常会回顾努力的自己,所以要为自己的努力留下足迹。

2024-05-03 16:06:50 1152 49

原创 【一步一步了解Java系列】:探索Java基本类型与C语言的区别

​​喜欢的一句话: 常常会回顾努力的自己,所以要为自己的努力留下足迹。作者:小闭。

2024-04-29 12:58:26 1403 15

原创 【一步一步了解Java系列】:初始Java

​喜欢的一句话: 常常会回顾努力的自己,所以要为自己的努力留下足迹。作者:小闭。

2024-04-27 12:51:08 693 5

原创 探索C语言数据结构:利用顺序表完成通讯录的实现

在好久之前我就已经学习过顺序表,但是在前几天再次温习顺序表的时候,我惊奇的发现顺序编表可以完成我们日常使用的通讯录的功能,那么今天就来好好通过博客总结一下通讯录如何完成吧。

2024-04-20 19:12:08 814 22

原创 C语言中抽象的编译和链接原理

常常为今天努力的自己打个卡,留个痕迹吧2024.04.12 小闭首先我们要知道可执行程序需要经过什么过程,亦或是说什么环境。那么接下来我们就要认识两个环境------首先我们都知道我们写C语言代码都要创建一个”.c“的源文件,可是其实我们的机器是看不懂”.c“环境的,此时就需要对我们的”.c“文件进行翻译,当然翻译是有很多过程的,大体可以分为两个大概方面,一个是,一个是链接过程。链接过程。

2024-04-13 14:19:56 909 4

原创 底层文件操作的各种函数(二)------printf,fprintf,sprintf,scanf,fscanf,sscanf的对比以及文件缓冲区

fprintf与fscanf偷得几日清闲,又因一瞬之间对蹉跎时间的愧疚,由此而来到CSDN这个高手云集和新手求学的平台来也写上那么一篇博客。虽然自己的博客那么久不温不热,但坚持写作,巩固自己就好。今天要讲的是续接上一篇文章的补充与继续吧。上期文章:fprintf与fscanf将格式化数据写入流式处理将按格式指向的 C 字符串写入流。如果format包含格式说明符(以 % 开头的子序列),则格式后面的其他参数将被格式化并插入到生成的字符串中,以替换其各自的说明符。

2024-04-13 14:19:39 734 1

原创 C语言底层知识------文件操作

表示读取到p2里的5个字符放到arr里去,但大家可能会疑惑,不是5个嘛,怎么只打印出四个,那是因为它会为‘\0’留一个位置,所以只读取4个字符。,用来存放文件的相关信息(如文件的名 字,文件状态及文件当前的位置等)。文件的内容不⼀定是程序,而是程序运行时读写的数据,比如程序运行需要从中读取数据的文件,或 者输出内容的文件。第一个为打开文件函数,第二个为关闭文件的函数,我们进行文件操作时都需要打开和关闭。就与二进制文件相反,将内存中的二进制数据转化,再储存那就是文本文件,文本文件我们是可以看的懂的。

2024-04-06 15:01:19 1626 11

原创 atoi函数解析以及自定义类型经典练习题

正如上面所写,我们定义一个联合体并创建,成员一个为int类型,一个为char类型,我们知道联合体共用一块内存,而且char的内存是在低地址处。此时我们就看机器是大端还是小端,就可以返回char c,处的数据,这里为低地址的内存,如果此时数据为1,说明该机器把低位是数据放到低地址处,所以为小端储存模式。如上方代码,在省略完函数前方的空格后,函数遇到-,1,2.后,在遇到空格直接结束函数,所以这里的结果为-12.然后再开始以位段结构体的形式进行对内存里赋值,这里的内存也是数组的内存,也是会影响函数的。

2024-04-06 15:00:12 828 1

原创 自定义类型(二)结构体位段,联合体,枚举

这周一时兴起,想写两篇文章来拿个卷吧,今天也是又来写一篇博客了,也是该结束自定义类型的学习与巩固了。常常会回顾努力的自己,所以要给自己的努力留下足迹。为今天努力的自己打个卡,留个痕迹吧 2024.03.30 小闭目录结构体默认对齐数的修改结构体的实现位段联合体联合体的实际使用枚举类型在别的编译器可能

2024-03-30 19:43:49 1667 48

原创 烫烫烫手的结构体大小计算来咯,很烫哦,慢慢消化。自定义类型(一)

emmm,在这炎热的夏天在宿舍吹着空调写着博客也是一件不错的事呢,今天就来来好好盘一下C语言中的自定义类型。 常常会回顾努力的自己,所以要给自己的努力留下足迹。为今天努力的自己打个卡,留个痕迹吧 2024.03.29 小闭目录结构体的简单使用 结构体的对齐规则结构体的大小计算在 C 语言中,结构体(Structure)是一种用户自定

2024-03-30 19:41:59 1257 31

原创 看完就等于拿捏浮点数在内存中的储存了

这时,浮点数就采⽤下⾯的规则表⽰,即指数E的计算值减去127(或1023),得到真实值,再将有效 数字M前加上第⼀位的1。,浮点数9.0 等于⼆进制的1001.0,即换算成科学计数法是:1.001×2^3 所以: 9.0 = (−1) ^ 0 *(1.001) ∗ 2^3 , 那么,第⼀位的符号位S=0,有效数字M等于001后⾯再加20个0,凑满23位,指数E等于3+127=130, 即10000010 所以,写成⼆进制形式,应该是S+E+M,即。即为一个大于1小于2的数,即。

2024-03-24 11:08:00 897 15

原创 是否还在疑惑数据存储的大小端和所谓的整形提升呢,那就来看看吧

最后一步以%d打印出结果以有符号的形式打印10进制,这里00000000000000000000000011111111,为正数,补码等于原码打印出来就是255了。我们看一下打印结果。这里signed char为有符号的char数据,unsiged char为无符号的char数据,那么单单一个char为有符号还是无符号呢,这时还是看我们的编译器的默认情况了,在VS中默认单个char,int等类型数据为有符号的。回到上面的代码中也就是a和b其实都是一样的数据,且赋值都为-1,那么他们的打印结果也是一样的了。

2024-03-18 12:28:03 1036 30

原创 操作多级(一、二、三级)指针才是我们的该有的姿态~

这里二级指针和三级指针为啥打印结果却一样,可能有人会想三级针针不应该在加一个“ * ”吗,那么我们就来解析一下。,所以这里的第一行和第二行是一样的结果,且arr3用两个指针就能打印字符串,这里是我们先用。好,现在我们就仔细剖析,为什么计算机是这样打印的。,如果这么想那就是错误的想法了。,所以打印结果如WERTY”。arr3等价于arr2用。图中其实也解析了其实。

2024-03-15 21:01:20 1019 21

原创 也许我们也可以一起学习sizeof与strlen呀,还有二维数组的计算哦

/16 计算第5行元素的小,尽管数组未定义第5行,但是 // sizeof的特点就是不参与运算所以这里也是可以计算出来的。//4或8 整个数组地址加1,则跳过数组大小即6个字节,指向 // 的还是一处未知的地址。

2024-03-09 11:59:31 1077 15

原创 指针中的回调函数与qsort的深度理解与模拟

比较多,我们是否能想出一个办法来解决这个问题,竟然我们要讲到回调函数了那么我们的解决方法就是我们要说的回调函数了,下面我就来讲讲如何·使用回调函数来实现简便。这里我们模拟实现的代码中我们仔细一想其实冒泡的趟数是不变的 ,所以冒泡的趟数代码我们就不修改这里的代码了,其实我们之前也讲过一点有关这点的内容,那么今天就更详细的来讲解一下,下面我们先看一下两段代码。这里函数用整形数据是成功运行的,其他类型的数组就不进行尝试了,在这之前我也尝试过了。那我们仔细对比就会发现哦我们这里多了一个我们不知道的函数,就是。

2024-03-05 13:52:35 1041 21

原创 数据结构------栈(Stack)和队列(Queue)

其实我们可以从其功能开始思考,这两者哪个更好去实现栈的功能,而且效率较高,其实说到这里,很多人可能已经有了结果,其实要说简洁与效率数组更适合来做栈。然后我们思考一下队列的功能实现是要数组好还是链表好呢,这么一想是不是马上就发现了,如果们还是用数组来实现的话,那么其出队列的时间复杂度为O(N),那么效率太低了,而链表实现的话则是O(1),显而易队列还是用链表实现较好。需要注意的是记得把原来的tail的next 指向新节点,也要把tail改为 新节点,因为尾插后new就为最后的节点也就是尾了。

2024-02-29 21:24:45 1528 29

原创 一个简短的补充------对链表练习题的补充补充

指针再次到达,则链表中存在环。为了表示给定链表中的环,评测系统内部使用整数。那么这时我们就可以根据这个结论解决这道题目了。如果链表中有某个节点,可以通过连续跟踪。,返回链表开始入环的第一个节点。来表示链表尾连接到链表中的位置(,仅仅是为了标识链表的实际情况。给定一个链表的头节点。如果链表无环,则返回。,则在该链表中没有环。那么这篇文章就结束了。

2024-02-21 23:06:17 1116 17

原创 力扣(LeetCode)数据结构练习题(3)------链表

审题过后我们就知道题目要求我们判断一个链表中是否有循环部分,如果有返回true,否则返回false。那么现在我们的难点就是如何判断出一个链表是否有环,这里我的方法就是快慢指针法。代码解析:这里我的快慢还是使用一个是一次走一个节点,另一个走两个节点,那么只要在这个链表中如果存在循环那么,快的指针迟早追上慢的指针,然后后面的就是简单的尾插,即找到两个链表节点哪个值小然后尾插到长链表中,最后就可以将链表连接成功了。这里运用尾插法,就是不断寻找两个链表当前节点val 的值哪个更小,哪个小就尾插哪个即可。

2024-02-20 23:20:04 1429 12

原创 力扣(LeetCode)数据结构练习题(2)

这里的题目也是很明了的,让我们返回一个中间节点就行了 ,那么我们要解决的就是如何找到中间节点,很多人想的办法是遍历一遍求出长度,然后又遍历到中间节点返回,但是这样就会增加时间复杂度了。然后我们就可以将代码往后遍历,这时n3的作用就是提前记住原来n2的next,然后令n2=n3,n1=n2,即可完成往后遍历。现在我们来审题,题目很明了让我们反转一个单向链表,那么这里我们就可以简单思考一下思路了,有了思路我们就可以开始尝试一下写代码了。我们这里是将节点里的指针进行反转即可完成链表的反转。

2024-02-19 23:55:31 1292 19

原创 数据结构的带头,双向,循环链表来咯

首先我们要使链表带头,那么我们定义的结构体中必须有两个结构体指针变量,一个指向前一个节点一个指向后一个节点。注意我们所说的头也是一个节点,但它不储存数据是为方便我们使优化结构使速率更快,时间复杂度更优。首先还是老样子,用typedef来命名结构体和类型,定义数据和两个指针,prev为指向前一个节点的指针,back则指向后一个节点的指针。首先我们要保证传过来的phead头节点不为空,所以assert一下。是为了使后面的赋值不用考虑赋值的顺序,后面的四个赋值顺序随便哪个在前代码都不会出错。

2024-02-18 23:58:02 674 13

原创 数据结构对链表的初步认识(一)

首先我在一周前发布了一篇有关顺序表的文章,其中我们通过简单的介绍和代码实践,已经基本了解顺序表了,那么即使我们把顺序表弄成动态的顺序表,但其实我们运用顺序表还是有以下问题:1. 如果空间不够,我们进行增容。但增容回付出一定的性能消耗,其次可能存在一定的空间浪费,因为我们每次增容都是2倍的增容我们可能并用不完这两倍的空间。2.头部和中部左右两部分的插入效率太低,因为我饿们需要将数据一个一个的往后移,所以效率不高。那么我们要怎么解决这个问题呢?

2024-02-17 17:27:06 1716 18

原创 来不及哀悼了,接下来上场的是C语言内存函数memcpy,memmove,memset,memcmp

这里很明显即使我们调用memmove函数时传过去的指针地址是明显有重叠部分的,但是这里我们看见结果确实是没问题的,将arr的前20个字节即5个元素复制到arr+2往后的元素。这里面强制转化为char*的指针是因为让指针dst和src都是一个一个字节的往后访问。这里面强制转化为char*的指针是因为让指针dst和src都是一个一个字节的往后访问。memcmp是一个用于比较内存区域的函数。函数较为简单就不多加解释了。

2024-02-14 22:51:39 1352 19

原创 一刻也没有为它哀悼~接下来登场的是动态内存分配的malloc与realloc以及free函数

官方 free 函数的详细要点和注意事项(

2024-02-13 22:12:14 1821 31

原创 力扣(LeetCode)数据结构练习题

这里我们从题目可知我们要将nums2合并到nums1中,其中nums1的长度为m+n,那么如果我们从nums1的前面开始排序,我们就会因为排序而丢失前面nums1原来的值,所以我们就要从末尾开始排序,所以我们在代码中先定义出三个整形变量end1,end2,end,分别进行运算,进行while循环在两个数组都没比较结束到首元素时我们进行比较后放入nums1的末尾,当有一个nums1的比较元素已经到首元素时,如果nums2的元素还没比较完,那么我们就需要将nums2的元素全排在前面即可。

2024-02-12 21:53:31 2649 11

原创 你真的了解线性表中的顺序表了吗?(静态与动态顺序)

这里格式化我们就把数组中的数据都格式化为0,size也格式化为0,格式化我们可以用循环来进行赋值,但是这里我们就用了一个函数进行赋值。这里我们首先检查有没有空间和空间是否足够,如不够则进行扩容,这里扩容我们用到realloc 函数,函数具体使用方法和头文件详情请看下图。这里我们在创建一个结构体,不同的是,因为我们要实现一个动态的顺序表,所以我们不再创建数组,而设置一个指针来实现动态。总结:静态顺序表的缺点还是很明显的,不能够灵活运用数据的大小是固定的,即。我们尾插55,95,22,然后又尾删掉三个数据。

2024-02-11 22:31:30 1134 18

空空如也

空空如也

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

TA关注的人

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