自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (6)
  • 问答 (3)
  • 收藏
  • 关注

原创 Java基础——参数传参(基本类型,引用类型传参)

java中基本数据类型和引用数据类型作为参数传递时的原理和过程,并解释了值传递与引用传递在Java中的区别,并涉及部分java的内存模型

2022-10-05 17:28:09 8344 1

原创 Java基础——对象的存储方式、操作方式、创建和销毁

对象的存储方式,操作方式、创建和销毁

2022-10-04 23:43:10 2048

原创 Java基础——Java语言与面向对象

Java语言基础——Java语言介绍与面向对象

2022-10-01 22:20:08 1032 1

原创 记录C/C++中那一行万恶的process exited with return value xxxxxxx

记录一下遇到一些神奇bug

2022-06-02 17:23:19 21772 16

原创 数据结构(十一)—七大内排序算法与优化

排序真的是一个经典问题,也有很多大佬深入地研究与讲解了各种排序算法,我这里只是对我所学的几种排序进行了一下总结。深入地讲解可以看其他大佬的ヾ(◍°∇°◍)ノ゙

2022-03-16 22:20:05 941

原创 数据结构(十)—查找算法(顺序表查找、有序表查找、线性索引查找、二叉排序树、AVL树、B树、散列表)

文章目录一、查找的定义二、顺序表查找(时间复杂度O(n))三、有序表查找(时间复杂度O(logn))3.1折半查找(二分查找)3.2插值查找3.3斐波那契查找四、线性索引查找4.1稠密索引4.2分块索引4.3倒排索引五、二叉排序树5.1二叉排序树的查找操作5.2二叉排序树的插入操作5.3二叉排序树的删除操作

2022-03-13 23:55:45 1672

原创 数据结构(九)-图与图的算法(存储结构,优化存储结构、图的遍历、最小生成树、最短路径算法)

有关图的定义和图的基本算法

2022-03-11 22:41:54 889

原创 仿QQ聊天软件(登录界面、好友界面、聊天界面)-Java(Swing、Socket)

主要运用swing和serversocket、socket写的仿QQ聊天室,深入学习并运用了swing相关组件和socket通信

2022-02-07 16:04:01 8588 7

原创 数据结构(八)-二叉树(二叉树概念、存储结构、遍历方法、线索二叉树)

文章目录一、二叉树的定义二、二叉树的特点三、特殊的二叉树四、二叉树的顺序存储结构五、二叉链表六、遍历二叉树七、遍历算法的实现八、二叉树的建立九、线索二叉树十、完整代码的实现一、二叉树的定义二叉树(Binary Tree)是n(n>=0)个结点的有限集合,该集合或者为空集(称为空二叉树)。或者由一个根结点的两棵互不相交的,分别称为根结点的左子树和右子树的二叉树组成。二、二叉树的特点每个结点最多有两棵子树,所以二叉树中不存在度大于2的结点。左子树和右子树是有顺序的,次序不能任意颠倒。即使树

2022-01-13 15:28:46 342

原创 数据结构(七)-树-基本概念、三种存储结构(Java、C语言)

每天get一个新知识,超开心~前面讲的数据结构都是前后具有一对一的关系,无论是线性表还是队列,栈等都是一对一的关系,那么如果出现一对多的关系的时候该怎么办呢?这种一对多的关系,就是今天要学习的数据结构——树。文章目录一、树的定义二、树的基本概念三、树的抽象数据类型四、树的双亲表示法(Java、C语言)五、树的孩子表示法(Java、C语言)六、树的孩子兄弟表示法(Java、C语言)一、树的定义树(Tree)是n(n>=0)个结点的有限集。n=0时称为空树。在任意一颗非空树中:有且仅有一个特定

2022-01-12 16:57:53 750

原创 数据结构(六)-串(字符串、模式匹配算法)(Java、C语言)

文章目录一、串的定义二、串的比较三、串的抽象数据类型四、串的顺序存储结构(Java、C语言)五、串的链式存储结构六、朴素的模式匹配算法七、KMP模式匹配算法八、KMP改良算法九、总结一、串的定义字符串并不是基本类型中的一种,它需要我们通过数据结构来实现,用来存储一连串的字符的数据结构,并提供一系列的方法来对字符串进行操作。串:串是由零个或多个字符组成的有限序列,又叫字符串。二、串的比较开始比较之前我们来了解一下编码,大家在学习任何编程语言的时候,都会接触到编码这个概念,以为计算机只能识别0和1,所

2022-01-11 16:16:03 575

原创 数据结构(五)-队列(Java、C语言)

今天内容比较简单~文章目录一、队列的定义二、队列的抽象数据类型三、循环队列(C语言)四、循环队列(Java)五、队列的链式存储结构的实现(C语言、Java)六、总结一、队列的定义队列:队列是只允许在一端进行插入操作,而在另一端进行删除操作的线性表二、队列的抽象数据类型ADT Queue{数据对象:D={ai|ai∈ElemSet, i=1,2, …,n, n≥0}数据关系:R1={<ai-1,ai>|ai-1,ai∈D, i=1,2, …,n } 约定a

2022-01-10 13:28:46 657

原创 数据结构(四)-栈与栈的应用(递归、四则运算表达式)(Java、C语言)

今天我们来学习栈与栈的应用,并以此来学习栈在递归算法,四则运算表达式中的应用一、栈的定义大家在写程序的时候应该都遇到过一个异常叫做“栈溢出”那这个栈和我们今天要学习的栈有什么异同呢?栈溢出就是缓冲区溢出的一种。由于缓冲区溢出而使得有用的存储单元被改写,往往会引发不可预料的后果。程序在运行过程中,为了临时存取数据的需要,一般都要分配一些内存空间,通常称这些空间为缓冲区。如果向缓冲区中写入超过其本身长度的数据,以致于缓冲区无法容纳,就会造成缓冲区以外的存储单元被改写,这种现象就称为缓冲区溢出。缓冲区​

2022-01-09 13:48:15 789 2

原创 数据结构(三)-线性表-链式存储结构、静态链表(Java、C语言)

本篇文章紧接上篇文章,上文了解了线性表的顺序存储结构,本篇文章我们来了解线性表的链式存储结构,并对比两种存储结构的优缺点。文章目录一、顺序存储结构的不足二、链式存储结构三、链式存储结构代码(C语言)四、线性表的链式存储结构(Java)五、静态链表六、循环链表与双向链表一、顺序存储结构的不足顺序存储结构虽然有它的优点,但是,顺序存储结构也有一个很大的缺陷,它的插入和删除需要挪动大量的元素,造成算法效率的问题,现在存储的数据,进行的操作还比较少,所以感受不到,但是当操作数量达到一定程度的时候,用顺序存储结

2022-01-08 16:28:44 1037 1

原创 数据结构(三)-线性表-顺序存储结构(Java、C语言)

从今天开始,本专栏将进入数据结构的学习,由于我学的书是C语言版,但本人比较喜欢Java,并且这两种语言在使用上存在一点细微的差别,因此,我将会从Java与C语言同时进行学习。今天学习第一个数据结构——线性表一、线性表的概念什么是线性表呢?前面我们学到,数据元素之间存在的关系就是数据结构,那么线性表中的元素存在什么关系呢?线性表:线性表是零个或多个数据元素的有限序列那我们可以看到,这个线性表是一个有序地序列,元素之间存在先后顺序。打个比方就像小朋友排队一样每一个小朋友就是线性表中的数据元素,他们

2022-01-07 14:34:11 1070 2

原创 数据结构(二)-数据结构与算法(时间复杂度与空间复杂度)

一、数据结构与算法的关系其实很多时候,感觉数据结构与算法是相互依存的,很多书的名称就叫数据结构与算法。那它们之间究竟有什么关系呢?以下为个人理解。数据结构更像是一种方法,它能够使你的算法变得更加高效和精炼,当学习数据结构的时候,适当地了解一些算法可以帮助你更加深刻地理解数据结构的用法以及效果。算法是一种为解决某个问题而设计的方法,算法并不是唯一的,但根本目的是要解决问题,而通过学习数据结构能够很好地帮助我们优化我们的算法。二、算法的时间复杂度与空间复杂度了解算法的时间复杂度,首先要了解函数的渐进

2022-01-06 15:27:01 423 1

原创 数据结构(一)-数据结构基本概念(Java、C语言)

一、引言数据结构这门课相信大家都不陌生,只要想从事计算机相关与互联网相关的工作,这门课都是必不可少的课。但是我并不是计算机专业学生,作为一个电气专业的学生,接触到的编程基本都是底层编程,无论是汇编语言(微机原理)、C语言(偏底层的应用,如单片机)、数据库等。因此,我们的课程中并没有数据结构这门课,但是我比较喜欢编程,因此,我将自学数据结构,希望通过写博客的方式巩固自己的所学。本人菜鸟一枚。希望有人能指出我的不足与错误。开始我的学习!!!二、书籍选择我这里选择了程杰的大话数据结构(C语言版),听说这本

2022-01-06 14:05:47 1411 1

原创 C语言课程设计-老人健康管理系统

C语言课程设计—老人健康管理系统课题要求先上效果图具有系统设计的基本功能设计要求(1)输入输出功能(2)修改特定信息的功能(3)删除某项信息的功能(4)查找功能(5)统计功能(6)退出系统(7)文件保存老人健康管理系统源代码下载这两篇是另外两个课设的讲解和源代码自取工资管理系统博客地址工资管理系统下载地址实验室试剂管理系统文件下载地址...

2021-12-09 23:58:24 823 2

原创 Java多线程游戏-雷霆战机

Java多线程游戏-雷霆战机先来张效果图(结尾附上源码地址,欢迎交流)一、总述飞机大战大家童年的时候都玩过,前两天学了线程方面的知识后,决定写一个关于多线程雷霆战机的游戏(单机)。这里用到了许多有关线程,图片处理,音乐等的技术我刚接触Java半年,做这个游戏磕磕绊绊。花费了很多时间,最后还是有一些瑕疵。素材是从另一位博主那下载的。素材下载地址:地址二、相关技术了解什么是线程,进程,多线程,并发线程了解线程寿命以及线程的控制了解线程安全问题,处理游戏中出现的线程安全问题了解Java中的

2021-08-28 18:47:37 3307 6

原创 Java-生产消费者模型

什么是生产消费者模型?来看一张图简单来说生产消费者模型就是生产者与消费者共同操作共有资源的一种形式。举个例子,例如,几个商人到茶园批发茶叶,这就是消费者,茶园工作人员就是生产者,工作人员生产茶叶,商人消费茶叶,他们具有共同的资源平台,就是茶叶仓库。这个时候,在对共有资源实现操作的时候,信息就显得尤为重要,工作人员作为生产者,生产了茶叶以后通知商人来消费,商人作为消费者,如果发现货物数量不足或者没货,就会联系生产者生产茶叶,这是一个相互传递信息,共同处理共有资源的一种形式。体现在程序中,我们可以模拟生

2021-08-13 18:48:20 183

原创 初窥多线程-简单多线程测试

什么是程序?很多书上写的是程序=算法+代码;它是固有的一个东西,你不去运行它,那么它就不能发挥它的作用。它以某些程序设计语言编写,运行于某种目标结构体系上。它就像一篇文章,可以让能读懂他的程序员读懂,他也是能让计算机读懂的指令,能够让计算机明白我们要让它干嘛。什么是进程?程序点开后,它将执行一系列的指令,达到一些功能的实现,而在程序运行的过程也就是进程。什么是线程?我们的单线程程序,就像是接力比赛一样,我们必须等前一个选手将接力棒送到手里,才可以开始下一步行动,单线程程序跟这非常相似,它必须一行一

2021-07-28 20:44:31 274

原创 PC版修图(图形图像处理)

一、程序说明制作窗体:将窗体分为功能按钮区与绘图区;功能按钮区添加功能按钮,实现各功能之间的切换;绘图区用来绘制图片,将功能区放在窗体右边,绘图区放在窗体正中间即可;添加监听器:需要实现动作监听,鼠标监听;创建方法类:用于存放各种绘图方法;用于存放监听器中的方法使监听器代码更加简洁;获取图片对象:将图片转化为可操作的图片输入输出流。二、方法说明获取可操作的图片对象:读取一个图片对象,创建文件对象,将图片通过ImageIO.read(file)方法读取图片,通过BufferedImage对象

2021-07-26 00:33:34 582

原创 C语言课程设计-工资管理系统

前言这个程序是博主在大学第一个学期学完C语言后的课程设计,那时刚从一个小白变得会一点点编程,老师就布置了这个课程设计,当时一脸懵这是啥?我在哪?我要干什么?但是通过查阅了很多资料以及问了许多人以后,我逐渐开始写我的第一个项目,现在来看这个程序,仍然存在许多问题以及不足,代码略显稚嫩,但是当我学完大学又一门课程C++面向对象编程,以及初学Java以后,我逐渐开始走上编程的学习之路,学得越深,越多,越发现编程之路的深奥与魅力,才知学...

2021-06-22 16:19:15 7767 75

原创 简易五子棋(包含开始、双人对战、简易AI、悔棋、认输、判断输赢)不含禁手

简易五子棋一、问题分析五子棋游戏分析:五子棋作为较为普遍且简易的娱乐游戏,受到众多人的热爱,且五子棋AI也是一个较为容易实现的AI。下面我们先来分析游戏规则。(哈哈,虽然大家都知道,但我还是想写写)双方分别使用黑白两色棋子,下在棋盘横线交叉处,先连成五子者胜利。(黑棋禁手啥的规则在我的程序里没加,就不赘述了)。程序分析:(1)首先,五子棋开始,我们需要一个棋盘,15*15的棋盘,需要黑白棋子。(2)其次,我们需要实现棋子顺序的改变,就是实现先下黑棋,再下白棋,然后实现一个基本的修正功能,

2021-06-06 20:50:42 4366 12

原创 Java实现递归可视化

什么是递归?递归调用就是在当前的函数中调用当前的函数并传给相应的参数,这是一个动作,这一动作是层层进行的,直到满足一般情况的的时候,才停止递归调用,开始从最后一个递归调用返回。几种经典的递归问题:1.实现数的阶乘 public static int fact(int n) { if (n <= 1) return 1; return n * fact(n - 1); }2.斐波那契数列public static int fi

2021-04-28 14:18:20 245

原创 Java简单的画图工具,包括简单的图形绘制,排序可视化,颜色按钮

图形绘制1.创建窗体;2.给按钮加上监听;3.添加组件;4.在监听器中加入按钮响应;5.绘制图形;`窗体代码import java.awt.Color;import java.awt.FlowLayout;import java.awt.Graphics;import javax.swing.JButton;import javax.swing.JFrame;public class DrawWindow { public static void main(String[]

2021-04-12 21:12:52 916

原创 Java界面开发FirstWindow

界面开发界面开发步骤: 自己建立一个类 写一个初始界面的方法 1、创建一个窗体的对象 2、设置窗体对象的相关属性 (标题 尺寸 布局 ....) 3、添加组件 按钮 输入框 3.1、创建组件对象 3.2、设置组件的属性 3.3、将组件对象加载到窗体上 4、调用这部分代码 界面开发时需要用到的“包”java.awt : 早期的界面开发工具包 保留使用元素类(尺寸 颜色 布局等 )javax.swing : 升级之后的界面开发工具包 使用可视化的组件

2021-04-07 15:19:06 180

原创 Java面向对象思路——代码实现

什么是类与对象类的定义:对象:什么是面向对象类的结构创建对象在面向对象的编程过程中需明白以下几点:类的定义:一类具有相同属性,特征的事物的统称;例如:人类具有性别,身高,体重等属性;电脑类具有品牌,内存等属性;对象:一个对象是一个具体的个体例如:几年级几班小明;小明则是一个具体的对象,他具有属于自己的特征与属性。什么是面向对象面向对象的编程用一句话概括就是“解决对象的问题”,在面向对象的编程过程中,编程过程更贴近生活,他是将一个个问题具象化。在编程过程中,空间中存储的内容即是一个个对象,

2021-03-25 16:16:21 277

仿QQ聊天室-(登录界面、好友列表、聊天界面)

主要运用了swing和serversocket来完成的仿QQ聊天室

2022-02-08

C语言课程设计—实验室试剂管理系统.zip

大一C语言课程设计,实验室试剂管理系统

2021-12-09

C语言课程设计—老人健康管理系统

大一课程设计,功能完善,bug较少

2021-12-09

Java-雷霆战机飞机大战

加了许多功能,1.加载页面 2.菜单页面 3.弹窗提示 4.多重关卡(四关) 5.多种飞机(八种) 6.音效 7.地图动态滚动,爆炸动图 8.分数达到一定程度飞机升级 9.计时 10.暂停\继续游戏(线程控制) 11.开始新游戏(清空原有数据与加载新数据) 12.道具栏与道具使用(刷新道具栏,使用道具,四种道具) 13.关卡boss 欢迎各位下载交流想法呀

2021-08-28

小型工资管理系统.cpp

大一时候的课程设计,代码简单,适合初学者

2021-06-22

简易五子棋.jar(包含开始、悔棋,人人对战、人机对战)

适合初学Java的,本人也是初学,借鉴了许多其他人的思路

2021-06-16

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

TA关注的人

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