- 博客(43)
- 资源 (1)
- 收藏
- 关注
原创 【数据结构笔记】单链表的基础操作 含代码实现(C++)
什么是链表?链表(Linked List)是一种常见的基础数据结构,是一种线性表,但是并不会按线性的顺序存储数据,而是在每一个节点里存到下一个节点的指针(Pointer)。单链表的基础操作:#define OK 1 //函数状态#define ERROR 0#define TRUE 1#define FALSE 0typedef int Status;void CreateListHead(LinkList, int); //头插法创建链表voi
2020-11-30 21:22:17 565
原创 正则表达式 语法详解
正则表达式介绍普通字符标准字符集合自定义字符集合量词字符边界匹配模式分组和反向引用分组反向引用预搜索正则在Java编程中的使用示例介绍正则表达式是用来进行文本的复杂处理的。正则表达式就是定义了一个规则,按照我们定义的规则进行字符串的匹配。大部分的编程语言、数据库、开发环境都支持正则表达式。普通字符字母、数字、汉字、下划线、以及没有特殊定义的标点符号,都是普通字符。普通字符的含义是,在匹配...
2020-04-08 17:38:19 430
原创 HTTP常见面试题:键入网址后,到网页显示,其间发生了什么?
前言:当键入网址后,到网页显示,其间发生了什么?这是一个在面试中频繁出现的问题。本文简洁地描述下数据包在网络中的漫游路径。一个数据包在网络中传输的过程1、浏览器解析URL,生成HTTP请求报文2、通过DNS服务获得服务器域名对应的IP地址3、TCP封装,IP封装成网络包4、如果在同一个内网呢,通过ARP协议获取目的IP的MAC地址,封装成帧,经交换机发往目的地址5、如果不在同一个内网,通过ARP获取要发往的端口,在网络中路由器间一跳一跳发往目的地,每一个路由器都会把收到的帧进行拆装再进行处理.
2021-03-05 14:28:17 343
原创 HTTP 基础知识盘点
HTTP基本概念报文格式请求报文:请求行:首部行:响应报文:状态行:首部行:Get和PostHTTP基本概念HTTP是什么?HTTP是超文本传输协议,既Hyper Text Transfer Protocol。超文本的概念:超文本是超级文本的缩写,指文字、图片、视频等"文本"的混合物,当然还有可以跳转的超链接。给出一个更准确的答案就是:HTTP 是一个在计算机世界里专门在「两点」之间「传输」文字、图片、音频、视频等「超文本」数据的「约定和规范」。报文格式(PS: sp:空格 cr:.
2021-03-04 21:41:03 220 1
原创 Java 集合知识盘点
集合基本概念Java集合类库采用“持有对象”(holding objects)的思想,并将其分为两个不同的概念,表示为类库的基本接口:集合(Collection) :一个独立元素的序列,这些元素都服从一条或多条规则。List 必须以插入的顺序保存元素, Set 不能包含重复元素, Queue 按照排队规则来确定对象产生的顺序(通常与它们被插入的顺序相同)。映射(Map) : 一组成对的“键值对”对象,允许使用键来查找值。 ArrayList 使用数字来查找对象,因此在某种意义上讲,它是将数字和对象
2021-03-03 16:06:34 260 1
原创 Java IO流知识盘点
IO流FIle类的使用java.io.File类:文件和文件目录路径的抽象表示形式,与平台无关File能新建、删除、重命名文件和目录,但File不能访问文件内容本身。如果需要访问文件内容本身,则需要使用输入/输出流。想要在Java程序中表示一个真实存在的文件和目录,那么必须有一个File对象,但是Java程序中的一个File对象,可能没有一个真实存在的文件或目录。File对象可以作为参数传递给流的构造器。构造器常用方法IO流原理及流的分类文件流操作步骤:1、File类的
2021-03-01 21:41:15 178
原创 Java 泛型知识盘点
泛型为什么要有泛型解决了两个问题:存储的安全性和取出要强转的繁琐自定义泛型结构如果定义了泛型类,实例化没有指明类的泛型,则认为此泛型类型为Object类型。泛型方法:public <E> List<E> copyFromArrayToList(E[] arr){}//泛型方法和泛型类的方法含义不同//可static泛型在继承上的体现class Order<T>{}class SubOrder extends Order<String
2021-03-01 21:17:25 122 2
原创 Java 注解知识盘点
注解(Annotation)注解概述常见的注解示例自定义注解JDK中的元注解JDK8中注解的新特性可重复注解类型注解注解(Annotation)注解概述从JDK 5.0开始,Java增加了对元数据(MetaData)的支持,也就是Annotation(注解)。Annotation其实就是代码里的特殊标记,这些标记可以在编译,类加载,运行时被读取,并执行相应的处理。通过使用Annotation,程序员可以在不改变原有逻辑的情况下,在源文件中嵌入一些补充信息。代码分析工具、开发工具和部署工具可以通过.
2021-03-01 21:00:08 113
原创 Java 异常知识点整理
异常异常概述与异常体系结构常见异常异常处理机制一:try-catch-finally异常处理机制二:throws —— 抛给上一级(调用者)手动抛出异常:throw —— throw new Exception();用户自定义异常类基本异常异常情形(exceptional condition)是指阻止当前方法或作用域继续执行的问题。当抛出异常后,有几件事会随之发生。首先,同 Java 中其他对象的创建一样,将使用 new 在堆
2021-03-01 17:18:54 167
转载 【数据结构】终于搞懂了什么是二叉查找树,AVL树,B树,B+树,红黑
二叉查找树: 二叉查找树就是左结点小于根节点,右结点大于根节点的一种排序树,也叫二叉搜索树。也叫BST,英文Binary Sort Tree。 二叉查找树比普通树查找更快,查找、插入、删除的时间复杂度为O(logN)。但是二叉查找树有一种极端的情况,就是会变成一种线性链表似的结构。此时时间复杂度就变味了O(N),为了解决这种情况,出现了二叉平衡树。 平衡二叉树: 平衡二叉树...
2020-12-07 17:18:20 282
转载 Java到底是编译型语言还是解释型语言?
转载自网络 Java这个语言很神奇: 你可以说它是编译型的。因为所有的Java代码都是要编译的,.java不经过编译就什么用都没有。你可以说它是解释型的。因为java代码编译后不能直接运行,它是解释运行在JVM上的,所以它是解释运行的,那也就算是解释的了。但是,现在的JVM为了效率,都有一些JIT优化。它又会把.class的二进制代码编译为本地的代码直接运行,所以,又是编译的。 像...
2020-11-16 17:01:50 200
转载 Windows下Git的使用
一、前言 上一篇文章已经介绍了Git的安装过程,接下来我们介绍如何使用Git将自己的项目上传到GitHub。 二、注册GitHub账号 注册链接 填写用户名、邮箱、密码即可,都是些常规操作,不多赘述。 三、Git初始化设置 1. 打开Git Bas...
2020-11-12 21:17:26 165
转载 Windows10下安装Git
Git是一个开源的分布式版本控制系统,可以有效、高速的处理从很小到非常大的项目版本管理。具体安装步骤如下:第一步:先从官网下载最新版本的Git官网地址:https://git-scm.com/downloads点击上图中表示的地方进行下载,得到Git-2.17.1.2-64-bit.exe文件。如果你的系统是32位的,可以通过如下方式下载:第二步:双击下载好的git安装包,弹出提示框,...
2020-11-12 15:35:15 444
原创 设计模式——MVC模式【Head First 设计模式】
复合模式——结合两个或以上的模式,组成一个解决方案,解决一再发生的一般性问题。MVC模式就是最经典的复合模式。图片形象的描述了MVC的逻辑内涵。Model(模型) - 模型代表一个存取数据的对象,它也可以带有逻辑,在数据变化时更新控制器。VIew(视图) - 视图代表模型包含的数据的可视化。Controller(控制器) - 控制器作用于模型和视图上,它控制数据流向模型对象,并在数据变化时更新视图,它使视图和模型分离开。举例展示代码展示1.模型public class Student {
2020-11-12 11:33:13 229
原创 设计模式——代理模式【Head First 设计模式】
代理模式——为另一个对象提供一个替身或占位符以控制对这个对象的访问。类图Subject,它为RealSubject和Proxy提供了接口,通过实现同一接口,Proxy在RealSubject出现的地方取代它。RealSubject是真正做事的对象,它是被proxy代理和控制访问的对象。Proxy持有RealSubject的引用。在某些例子中,Peoxy还会负责RealSubject对象的创建和销毁。客户和RealSubject的交互都必须通过Proxy。因为Proxy和RealSubject实现相
2020-11-12 11:04:04 143
原创 设计模式——单例模式【Head First 设计模式】
单例模式——确保一个类只有一个实例,并提供一个全局访问点。类图代码展示public class Singleton{ private static Singleton uniqueInstance; private static Singleton getInstance(){ if(uniqueInstance == null){ uniqueInstance = new Singleton(); } return uniqueInstance; }}总结单例模
2020-11-10 22:05:49 81 1
原创 设计模式——工厂模式【Head First 设计模式】
简单工厂创建对象的代码经常会改变,按照OO设计原则,我们应该将变化和不变分离开来。我们将创建对象的代码封装成一个新对象,让这个对象专职负责创建对象。我们称这个对象为工厂,工厂处理创建对象的细节。简单工厂其实不是一个设计模式,反而比较像是一种编程习惯。类图关键代码展示class SimplePizzaFactory { public Pizza createPizza(String type) { Pizza pizza = null; if (type.
2020-11-05 21:53:23 213 1
原创 设计模式——装饰者模式 【Head First 设计模式】
装饰者模式——动态地将责任附加到对象上。若要扩展功能,装饰者提供了比继承更有弹性的替代方案。模式类图装饰者和被装饰者对象有相同的超类型,所以在任何需要原始对象的场合,可以用装饰过的对象替代他。我们来看一个具体的例子这是书上饮料的例子。所有具体的饮料类和调料装饰类的超类型都是饮料类。下面看看代码时怎么实现的。代码展示1.Beverage类是一个抽象类是所有类的超类public abstract class Beverage{ String description = "Unknown
2020-11-05 10:48:41 131 2
原创 设计模式——观察者模式 【Head First 设计模式】
观察者模式 ——定义了对象之间的一对多依赖,这样一来,当一个对象改变状态时,他的所有依赖者都会收到通知并自动更新。要点1.观察者模式定义了对象之间的一对多的关系。2.主题(可观察者)用一个共同的接口来更新观察者3.观察者和可观察者之间用松耦合方式结合,可观察者不知道观察者的细节,只知道观察者实现了观察者接口。4.使用此模式时,你可从被观察者出推或拉数据。5.有多个观察者时,不可以依赖特定的通知顺序。6.Java有多种观察者模式的实现,包括了通用的java.util.Observable。
2020-11-04 16:20:27 111 1
原创 设计模式——策略模式 【Head First 设计模式】
策略模式——定义算法族,分别封装起来,让他们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。整体架构图代码展示 1.FlyBehavior接口public interface FlyBehavior { public void fly();}2.FlyWithWings类public class FlyWithWings implements FlyBehavior { @Override public void fly(){ System
2020-11-04 15:08:36 185 1
原创 教你如何在AMD电脑的VMware安装Mac OS 10.15
https://www.bilibili.com/read/cv6489864/
2020-09-11 23:45:42 1195
转载 UML类图与对象图
1.类图基础属性-表示private #表示protected ~表示default,也就是包权限 _下划线表示static 斜体表示抽象 2.类与类之间关系在UML类图中,常见的有以下几种关系: 泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依...
2020-03-26 16:38:47 669
LibraryManagement.zip
2020-11-11
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人