自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

晃在云淡风轻

君指先跃动の光は、私の一生不変の信仰に、唯私の超電磁砲永世生き!

  • 博客(86)
  • 资源 (1)
  • 收藏
  • 关注

原创 计组笔记(二)——运算方法与运算器

运算方法与运算器定点数运算加减运算补码加减运算规则参加运算的操作数用补码表示;补码的符号位与数值位同时进行加运算:加:两数补码直接相加;减:对减数补码再求补(减数补码连同符号位一起按位取反,末位加1),再与被减数的补码相加。运算结果即为和/差的补码。什么情况下会发生溢出?当两个同符号数相加或两个异符号数相减,运算结果可能会发生溢出;当两个同符号数相减或两个异符号数相加,运算结果一定不会发生溢出;课堂习题如何判断是否发生了溢出?双符号位判决法;进位判决

2022-04-05 23:14:46 1356

原创 计组笔记(一)——计算机中的数据表示

计算机系统中的数据表示数据编码进制转换其他->十进制按权展开十进制->其他整数部分:除基取余,先低后高小数部分:乘基取整,先高后低二进制->八进制整数部分:从右往左,3位一组,不够3位最左边补0小数部分:从左往右,3位一组,不够3位最右边补0二进制->十六进制和八进制一样,4位一组补码的性质补码与原码、真值的相互转换补码=模+真值,即[X]补=M+X如果X>0,那么模就会作为超出部分被舍去,此时[X]补=X,所以正数的补

2022-04-05 22:46:24 1436

原创 数据结构学习笔记(7)——查找

查找的基本概念平均查找长度ASL=∑i=1nPiCi ASL = \sum_{i=1}^nP_iC_i ASL=i=1∑n​Pi​Ci​​​顺序查找和折半查找一般线性表的顺序查找基本思想:从线性表的一端开始,逐个检查关键字是否满足给定的条件。静态查找表的顺序结构typedef struct { ElemType *elem; //元素存储空间基址,建表时按照实际长度分配,0号单元留空 int tableLen; //表长}SSTable;顺序查找算法(普通版)i

2022-04-05 22:03:56 639

原创 数据结构学习笔记(6)——图

图的存储结构图的顺序存储结构——邻接矩阵typedef struct { int no; //顶点编号,表示它的位置 char info; //顶点的其他辅助信息,没有的话可以删除}VertexType; //顶点 typedef struct{ int edges[maxSize][maxSize]; //顶点之间的相邻关系(无权值:1表示相通,0表示不相通)(有权值:∞表示不相通,其它为权值) int vexnum, arcnum; //总顶点数和

2022-04-05 21:49:29 1114 1

原创 数据结构学习笔记(5)——树与二叉树

树的基本概念结点:结点不仅包含数据元素,而且包含指向子树的指针结点的度:结点拥有的子树个数或者分支的个数。树的度:树中各结点度的最大值。叶子结点:又叫作终端结点,指度为0的结点孩子:结点的子树的根结点。双亲:与孩子的定义相对应。A是B的孩子,那么B就是A的双亲。兄弟:同一 个双亲的孩子之间互为兄弟。祖先:从根到某结点的路径上的所有结点,都是这个结点的祖先。树的高度(或者深度):树中结点的最大层次。结点的深度:从根结点到该结点的路径上的结点个数。结点的高度:从某结点往下走可能到达多个叶

2021-07-21 20:35:57 858

原创 数据结构学习笔记(4)——数组、矩阵与广义表

数组二维数组是元素为一元数组的一维数组。数组一般采取顺序存储,最常见的两种操作是查找与修改。二维数组元素的位置计算问题:假设有二维数组a[m][n],数组从a[0][0]开始存储,问a[i][j]是数组中第几个元素?分析:m表示a的行数,n表示a的列数,且每行有n个元素,每列有m个元素。a[i][j]表示的是数组a中第i+1行第j+1个元素,那么:行优先:a[i][j]前面有i行,那么a[i][j]前面就有i*n+j个元素,则a[i][j]就是第i*n+j+1个元素列优先:a[i

2021-07-09 22:42:46 963 4

原创 数据结构学习笔记(3)——串

串数据类型的定义串的定义串是由0个或多个字符组成的有限序列。串中字符的个数称为串的长度,0个字符的串称为空串。串中任意连续的字符组成的子序列称为子串,包含子串的串称为主串。串是一种限定元素为字符的线性表。串与线性表最大的区别是操作集不同,线性表主要是针对某一元素操作,而串则主要针对子串操作。串的存储结构定长顺序存储表示typedef struct Str{ char str[maxSize+1]; //maxSize为已定义的常量,表示串的最大长度。+1是以为多出一个结束标

2021-07-07 21:01:11 556 1

原创 数据结构学习笔记(2)——栈与队列

栈与队列结构体定义顺序栈定义typedef struct{ int data[maxSize]; int top;}SqStack;链栈结点定义typedef struct LNode{ int data; struct LNode *next;}LNode;顺序队列定义typedef struct{ int data[maxSize]; int front; int rear;}SqQueue;链队定义[

2021-07-03 20:47:09 361 2

原创 数据结构学习笔记(1)——线性表

线性表的结构体定义与基本操作线性表的结构体定义顺序表的结构体定义一个顺序表中包含一个存储表中元素的数组data[]和一个指示元素个数的变量length:#define maxSize 100typedef struct{ int data[maxSize]; // 默认int型,可换 int legth;}Sqlist;简单写法:int A[maxSize]int n;单链表的结点定义typedef struct LNode{ int data; //数据域 st

2021-06-25 00:51:02 349 3

原创 Linux(六)——RPM与YUM

rpm包的管理介绍一种用于互联网下载包的打包及安装工具,它包含在某些Linux分发版中。它生成具有.RPM扩展名的文件。 RPM是RedHat Package Manager(RedHat软件包管理工具)的缩写,类似windows的setup.exe,这一文件格式名称虽然打上了RedHat的标志,但理念是通用的。rpm包名基本格式一个rpm包名: firefox-45.0.1-1.e...

2019-09-22 21:44:47 190

原创 Linux(五)——网络配置与进程管理

网络配置查看IPifconfig 显示或配置网络设备信息获取IPLinux下的IP地址可以自动获取,也可以人为指定。自动获取带来的问题是可能每次开机时获取到的IP都不一样,这显然不太方便。自动获取自动获取一般直接进入设置程序,在网络里面选择DHCP即可。2. 人为指定可以选择上图中的手动人为设定。也可以直接修改配置文件,编辑 vi /etc/sysconfig/netw...

2019-09-22 21:44:05 290

原创 Linux(四)——CROND和磁盘分区与挂载

CROND任务调度crond是linux系统中用来定期执行命令或者指定程序任务的一种服务或者软件。任务调度分为系统工作和用户工作。系统工作是指linux系统中某些重要的工作必须周而复始地执行,比如病毒扫描。而用户工作是指个别用户希望执行的某些程序,比如数据的备份等。语法:crontab [选项]常用选项:选项解释-e编辑定时任务-r删除当前用户的...

2019-09-22 21:43:31 247

原创 Linux(三)——实用指令与文件权限

指定运行级别运行级别就是操作系统当前正在运行的功能级别,级别是从0到6。Centos7系统之前的版本是通过/etc/inittab文件来定义系统,而CentOS7用的是/lib/systemd/system/runlevel*。运行级别0:关机1:单用户【找回丢失密码】2:多用户状态没有网络服务3:多用户状态有网络服务4:系统未使用保留给用户5:图形界面6:系统重启常用的...

2019-09-22 21:42:27 683 1

原创 Linux(二)——Linux目录树和用户管理

Linux最优秀的地方之一在于它的多人多任务环境,而为了让个用户具有保密的文件数据,因此文件权限的管理就变得非常重要。用户与用户组

2019-09-22 21:41:43 384

原创 Java多线程与Concurrent并发包问题汇总

文章目录进程与线程的区别与联系?并行与并发的区别?Java虚拟机是多线程的吗?多线程的实现方式有哪几种?如何选择?1. 继承Thread类2. 实现Runnable接口3. 实现Callable接口启动一个线程是调用 run()方法还是 start()方法?进程与线程的区别与联系?进程就是程序的一次动态执行过程,通俗来讲,进程就是正在运行的程序,它是系统进行资源分配和调用的独立单位。每一个进程...

2019-08-31 11:57:59 920

原创 Java中的IO流知识点总结

文章目录File文件类IO流字节流和字符流字节流OutputStream和InputStreamFileOutputStream和FileInputStreamBufferedInputStream和BufferedOutputStream字符流Reader和WriterFile文件类File类是文件和目录路径名的抽象表示形式,可以用来表示文件,也可以用来表示目录。File类提供了多种构造方法...

2019-08-26 21:23:13 3945

原创 Java网络编程的简单实现

InetAddress类的概述public class InetAddress extends Object implements Serializable此类表示Internet协议(IP)地址。IP地址是由IP使用的32位或128位无符号数字,构建UDP和TCP协议的低级协议。InetAddress的一个实例由一个IP地址和可能的相应主机名组成(取决于它是用主机名构造还是已经完成了反向主...

2019-08-25 16:32:27 243

原创 计算机网络基础知识汇总

网络模型网络模型用来解释计算机网络之间进行通信的规则。网络模型一般是指OSI七层参考模型和TCP/IP四层参考模型。计算机网络是电脑相互连接组成的,这些电脑叫做主机,就像正常情况下两个人要用同一种语言交流一样,主机之间的联系也要按照相同的标准才行,这些标准叫做协议。为了实现主机之间的联系,网络模型每一层都有各自的功能,对应于各种各样的协议。所有的协议加起来就构成了互联网的核心,统称为"互联网协...

2019-08-24 21:47:04 1023 1

原创 Review——集合框架知识点汇总

文章目录数组与链表集合框架Collection接口ListSetMapCollections工具类练习题数组与链表在计算机中要对给定的数据集进行若干处理,首要任务是把数据集的部分或全部存储到内存中,然后再对内存中的数据进行各种处理。数组和链表在内存的存储形式上是不同的,前者属于连续存储,后者属于离散存储。数组一般都是把数据连续的存放在内存中,这就要求内存空间中有足够大的连续空间以供使用。当内...

2019-08-21 23:30:21 485

原创 自动内存管理机制——Java内存区域与内存溢出异常

Java与C++的一个重要区别就是内存动态分配和垃圾回收机制,在虚拟机自动内存管理机制的帮助下,Java程序员不需要为每一个new操作去写配对的delete/free代码,不容易出现内存泄漏和内存溢出的问题。不过,如果不了解虚拟机是怎样使用内存的, 那么排序错误就会成为一项非常艰辛的工作。运行时数据区域Java虚拟机在执行Java程序时会把它所管理的内存划分为若干个不同的数据区域:程序计数器...

2019-08-05 23:11:03 190

原创 数据结构与算法(一)——经典而优雅的排序算法

文章目录游戏规则十大排序排序算法的模板简单选择排序游戏规则我们关注的主要对象是重新排列数组元素的排序算法,数组中的每一个元素都有一个主键。排序算法的目的是将所有元素的主键按照某种方式排列(通常是按照大小或者字母顺序)。排序按照过程中使用的存储器不同分为内部排序和外部排序。内排序:指在排序期间数据对象全部存放在内存的排序。外排序:指在排序期间全部对象个数太多,不能同时存放在内存,必须根...

2019-07-27 00:56:33 468

原创 时间复杂度与空间复杂度

时间复杂度算法的时间量度一个算法是由控制结构(顺序,分支,循环)和原操作(固有数据类型的操作)构成的。算法时间取决于二者的综合效果。为了便于比较同一问题的不同算法,通常将作为问题中基本操作的源操作重复执行的次数作为算法的时间量度。时间复杂度一般情况下,算法中基本操作重复执行的次数是问题规模nnn的某个函数f(n)f(n)f(n),那么算法上的时间量度TTT记作T(n)=O(f(...

2019-06-21 15:53:54 175

原创 Spring学习笔记(三)——AOP

AOP的一些基本概念面向对象编程(OOP)的弊端?——当需要为多个不具有继承关系的而对喜爱那个引入同一个公共行为时,例如日志、安全监测等,我们必须在每个对象里引入公共行为,这样程序中就产生了大量的重复代码。解决方法?——面向方面编程(AOP),AOP所关注的方向是横向的,不同于OOP的纵向。AOP和 IoC容器的关系?——AOP框架是Spring的一个关键组件,但...

2019-06-12 16:43:51 164

原创 Spring学习笔记(二)——依赖注入与自动装配、基于注解的配置、基于java的配置

参考文档:传送门1 传送门2说明:第一个文档是W3School中的Spring学习文档,比较粗略。第二个文档是Spring官方的文档,非常详细,对自己英语水平不自信的话使用浏览器的翻译插件查看。写在前面:本文是个人学习总结,笔记内容都来自于以上两个文档,笔记大部分采用了问答的方式来梳理文档中复杂的知识体系,属个人习惯,不喜勿喷。文章目录依赖注入基于构造方法的依赖注入基于setter方法的...

2019-06-06 23:08:18 229

原创 Spring学习笔记(一)——Spring体系结构、IoC容器、Bean

参考文档:传送门1 传送门2文章目录Spring的体系结构核心容器-Core Container数据访问或集成Web其他模块容器IoC与BeanBeanFactory和ApplicationContext配置元数据的三种方式实例化ApplicationContextBeanBean的定义Bean和容器的关系Spring的体系结构Spring是模块化的,允许你选择适用自己的模块而不必将其他...

2019-06-05 17:45:29 234

原创 Linux(一)——命令行模式下命令的运行

用户都是通过程序在跟系统做沟通的,命令行模式登陆后所运行的程序被称为壳(shell),这个程序负责跟用户沟通。Linux的壳程序就是BASH。命令整个命令的执行方式非常简单,需要熟悉几个重要的概念。[dave@localhost ~]$ command [-options] parameter1 parameter2 ...[用户@主机名 所在目录(~)]$ 命令 选项 参数一 参数二 ...

2019-06-04 15:34:55 13609

原创 java高级编程——多线程(二)之同步与死锁

文章目录线程的操作状态线程常见操作方法线程的命名和获取线程的休眠线程的优先级线程的同步与死锁同步问题的引出同步操作java中方法的完整定义格式死锁总结线程的操作状态任何线程一般都具有五种状态,即:创建,就绪,运行,堵塞与终止。创建在程序中用构造反复创建一个线程对象后,新的线程就处于新建状态。此时的线程就已经拥有内存空间和其他资源了,但还处于不可运行状态。就绪新建线程对象后,调用该线程...

2019-05-29 22:28:28 186

原创 java高级编程——多线程(一)之实现多线程

文章目录线程与进程并行与并发JVM虚拟机是多线程的吗多线程实现继承Thread类实现Runnable接口两种方法的区别与联系利用Callable接口实现多线程线程与进程线程和进程一样,都是实现并发的一个基本单位。线程是依赖进程存在的。先来说进程,进程就是程序的一次动态执行过程。通俗来讲,进程就是正在运行的程序,它是系统进行资源分配和调用的独立单位。每一个进程都有它自己的内存空间和系统资源。...

2019-05-29 16:54:47 1525

原创 java高级编程——Class类与反射机制

文章目录Class类类的加载过程类的加载时机类加载器java的反射机制获取Class对象的三种方法通过反射实例化对象通过反射调用构造方法通过反射调用成员方法通过反射访问成员变量反射的简单应用反射运行配置文件内容利用反射越过泛型检查很早之前就已经学过反射了,但是一直没有机会总结,最近在学习Spring框架的底层原理,频繁的遇到反射机制,借此机会稍微总结一下。几乎所有的开发框架以及应用技术都是基于反...

2019-05-28 20:51:10 386 1

原创 Spring前瞻——浅析Java的动态代理模式

Spring的两个主要思想就是IOC和AOP。其中最重要的AOP思想使用的就是java的动态代理模式,学习这种底层原理对于我们理解AOP思想很重要。学习动态代理模式之前,我们要先学习代理模式。代理模式定义为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式(Proxy P...

2019-05-27 14:18:00 183

原创 项目管理工具——Maven的基本使用

文章目录为什么要用mavenmaven的安装与配置仓库本地仓库中央仓库远程仓库配置Maven阿里云镜像Maven依赖的搜索顺序POM构建你的第一个java项目参考文档:https://www.runoob.com/maven/为什么要用mavenMaven 翻译为"专家"、“内行”,是 Apache 下的一个纯 Java 开发的开源项目。基于项目对象模型(缩写:POM)概念,Maven...

2019-05-25 23:34:34 381

原创 Python基础语法——编程规范、变量、运算符、基础数据类型

文章目录编程规范行与缩进注释多行语句输入与输出空行导入模块help函数函数与方法变量运算符算数运算符比较运算符赋值运算符位运算符逻辑运算符成员运算符身份运算符运算符的优先级基础数据类型Number数字数据类型数字类型之间的转换数学函数随机数函数三角函数数学常量String字符串类型索引:截取字符串更新字符串转义字符字符串运算符字符串格式化Python三引号字符串中的内置函数List列表访问列表中的...

2019-05-17 18:37:20 814

原创 java中的二进制与按位运算

2019-05-16 23:10:34 2391

原创 版本控制工具—— Git的使用

文章目录什么是Git?Git和SVN的区别是什么?Git的安装可能要常用的Linux命令初次运行Git获取Git仓库场景模拟场景一:新增加文件并提交什么是Git?Git是当前最为先进的分布式版本控制系统,可以有效,高速的处理从小到大的项目管理。常见的Git开发流程是这样的:1、从服务器上克隆完整的Git仓库(包括代码和版本信息)到单机上。2、在自己的机器上根据不同的开发目的,创建分支,修...

2019-05-15 23:48:26 354

原创 版本控制工具(一)——SVN的具体使用

为什么要使用版本控制工具版本控制软件提供完备的版本管理功能,用于存储、追踪目录(文件夹)和文件的修改历史,是软件开发者的必备工具,是软件公司的基础设施。版本控制软件的最高目标,是支持软件公司的配置管理活动,追踪多个版本的开发和维护活动,及时发布软件。使用版本控制工具大概有以下几方面的好处:协同合作当你的工作团队中没有使用版本控制工具的时候,对于共享文件的操作会存在很大的麻烦,如果...

2019-05-13 23:30:32 1064

原创 Vue(一)——Vue基础知识

什么是Vue?官网,有非常详细的Vue教程,强烈推荐,跟着教程把代码敲一遍,理解起来不是很困难。官网教程传送门……Vue.js是一套构建用户界面的渐进式框架,Vue 采用自下向上增量开发的设计,其核心库只关注视图层,易于上手,同时vue完全有能力驱动采用单文件组件和 Vue 生态系统支持的库开发的复杂单页应用。简单来说呢,Vue号称三大前端框架之一,以往的html+css+js的开...

2019-05-10 22:04:27 326

原创 SSM框架整合详细步骤——实现商品管理系统登录功能

学习Spring+SpringMVC+MyBatis也要一段时间了,终于到了整合的时候了。步骤不是很难,好记性不如烂笔头,记下来方便回顾。步骤一:新建动态web项目这个没什么可说的,需要注意的是选择正确的项目版本和服务器版本。比如我新建了一个叫SSM_001的动态web项目。它的初始结构是这样的:步骤二:导入jar包建好项目后我们需要导入所有SSM整合所需要的jar包(先不用mave...

2019-05-10 15:10:19 4487 2

原创 POJO和javaBean的区别

POJOPOJO的全称是Plain Old Java Object,普通的旧java对象。POJO有以下几点约束:不能是某个类的子类不能是某个接口的实现类不能包含预先指定的注解。POJO对字段(属性)的访问和修改没有限制,它是一个封装了业务逻辑的对象。我们用控制器实现商业逻辑,通过操作POJO去访问数据库,POJO通常和数据库中的表拥有同样的字段。BeanBean同样有以...

2019-04-29 20:24:26 498

原创 SpringMVC——常用注解总结

文章目录@Controller@RequestMapping参数绑定常用的注解@PathVariable@ReuqestHeader和@CookieValue@RequestParam@ResponseBody和@RequestBody@ModelAttribute@SessionAttribute@ControllerController也就是我们常说的控制器,负责处理由Dispatche...

2019-04-26 22:03:26 271

原创 SpringMVC——中文乱码处理、静态资源处理、上传文件、拦截器、异常处理

中文乱码处理SpringMVC处理中文乱码的解决方法和普通Servlet处理中文乱码的方法没有什么不同,我们都是推荐使用过滤器。新建Filter-CharacterEncodingFilter重写doFilter方法:public void doFilter(ServletRequest request, ServletResponse response, FilterChain ch...

2019-04-25 17:53:21 336

DBCP的jar包

DBCP(DataBase connection pool)数据库连接池。是 Apache 上的一个 Java 连接池项目,也是 tomcat 使用的连接池组件。单独使用DBCP需要2个包: * commons-dbcp.jar * commons-pool.jar。

2019-03-19

空空如也

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

TA关注的人

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