自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Guizy

星光不问赶路人 时光不负有心人

  • 博客(401)
  • 资源 (2)
  • 收藏
  • 关注

原创 学习《Java设计模式》目录索引 (持续更新中)

写在前面:此系列为本人学习韩顺平《设计模式》所整理的笔记 !博主的其他笔记汇总 ???? :学习Java学习路线 (贼全!!),学习笔记会持续更新: 《Java学习笔记目录索引》学习数据结构与算法,学习笔记会持续更新: 《恋上数据结构与算法》学习Java并发编程,学习笔记会持续更新: 《Java并发编程》...

2021-03-11 08:35:56 731 2

原创 学习《网络协议》目录索引 (持续更新中)

写在前面:此系列为本人学习MJ《网络协议从入门到底层原理》所整理的笔记 !博主的其他笔记汇总 ???? :学习Java学习路线 (贼全!!),学习笔记会持续更新: 《Java学习笔记目录索引》学习数据结构与算法,学习笔记会持续更新: 《恋上数据结构与算法》学习Java并发编程,学习笔记会持续更新: 《Java并发编程》学习网络协议网络协议(一) :...

2021-03-01 09:17:33 717

原创 学习《Java并发编程》目录索引 (持续更新中)

     写在前面:此系列为本人学习黑马《Java并发编程》所整理的笔记 !不局限于应用层开发, 更加深入理解多线程, 并发编程, 更有利于我们长久发展 !学习Java并发编程

2020-12-20 18:43:56 4512 10

原创 学习《Java虚拟机》目录索引 (持续更新中)

     写在前面:此系列为本人学习宋红康《JVM从入门到精通》所整理的笔记 ! (参考内容 : 宋红康JVM课件、OneBy1314)不要局限于应用层开发, 更加深入理解JVM底层, 更有利于我们长久发展 !学习Java虚拟机一、内存与垃圾回收篇二、字节码与类的加载篇...

2020-12-15 10:50:24 1604 4

原创 学习《恋上数据结构与算法》目录索引 (持续更新中)

     写在前面:此系列为本人学习小码哥《恋上数据结构与算法》所整理的笔记,恶补一下自己的短板数据结构与算法!一、数据结构1、《恋上数据结构与算法》笔记(一):动态数组二、常见算法...

2020-03-28 12:32:48 3481

原创 Java学习笔记目录索引 (持续更新中)

Java学习路线目录索引一、Java基础(省略)Lambda表达式及函数式接口二、Java数据库MySQL 一 概念、DDL、DML、DQL、事务、约束等数据库设计 一 多表关系、三大范式JDBC 一 基本使用、DAO组件、连接池、JDBCTemplate三、JavaWebHTML相关学习CSS — 常用属性CSS — 选择器及三大特性CSS — 网页的布局方式C...

2020-01-15 13:55:52 93280 65

原创 Java并发编程(十) : JUC 之 AQS原理、ReentrantLock原理

J.U.C8.2.1 AQS 原理概述:全称是 AbstractQueuedSynchronizer,是阻塞式锁和相关的同步器工具的框架特点:用 state 属性来表示资源的状态(分独占模式和共享模式),子类需要定义如何维护这个状态,控制如何获取锁和释放锁getState - 获取 state 状态setState - 设置 state 状态compareAndSetState - cas 机制设置 state 状态独占模式是只有一个线程能够访问资源,而共享模式可以允许多个线程访问资源

2021-08-03 10:13:08 389 1

原创 MyBatis拓展知识 :批量执行SQL语句、自定义TypeHandler来处理枚举类型

一、批量执行SQL语句 (BatchExecutor)之前学习使用mybatis的foreach标签来, 批量查询sql, 这样的操作实际对MySQL数据库存在瓶颈问题,且效率很低非批量的方式: 发一条sql, 预编译一次, 设置参数; 效率低发送SQL10000次, 预编译10000次, 设置参数1000次, 数据库执行10000次批量的方式: 将sql语句先预编译好, 给该sql设置参数即可只发送SQL一次, 预编译一次, 设置参数1000次, 数据库执行一次二、自定义Typ

2021-04-22 18:34:04 164

原创 MyBatis插件开发 : 插件原理、插件开发流程

增强代码MyBatis在四大对象的创建过程中,都会有插件进行介入。插件可以利用动态代理机制一层层的包装目标对象,而实现在目标对象执行目标方法之前进行拦截的效果。MyBatis 允许在已映射语句执行过程中的某一点进行拦截调用。默认情况下,MyBatis 允许使用插件来拦截的方法调用包括:Executor (update, query, flushStatements, commit, rollback, getTransaction, close, isClosed)ParameterHa...

2021-04-22 16:53:32 158

原创 MyBatis运行原理(三) : 多参数封装Map的流程、查询实现原理 (源码分析)

二、获取SqlSession的流程1、进入到openSession()方法, 因为sqlSessionFactory在运行时的对象为DefaultSqlSessionFactory, 所以通过动态绑定机制调用的openSession为DefaultSqlSessionFactory的 @Override public SqlSession openSession(boolean autoCommit) { // configuration.getDefaultExecutorType()

2021-04-22 11:47:15 191 1

原创 MyBatis运行原理(二) : 获取SqlSession的流程、getMapper获取接口代理对象流程 (源码分析)

二、获取SqlSession的流程1、进入到openSession()方法, 因为sqlSessionFactory在运行时的对象为DefaultSqlSessionFactory, 所以通过动态绑定机制调用的openSession为DefaultSqlSessionFactory的 @Override public SqlSession openSession(boolean autoCommit) { // configuration.getDefaultExecutorType()

2021-04-22 11:44:56 152 1

原创 MyBatis运行原理(一) : 核心组件、SqlSessionFactory的构建过程(源码分析)

MyBatis多个参数封装Map的过程1、首先在该处打上断点因为mapper是代理对象, 进入代理类MapperProxy中的invoke方法 @Override public Object invoke(Object proxy, Method method, Object[] args) throws Throwable { try { // 判断是否是Object中的方法, method对象就是上面的getUser方法 if (Object.class.eq

2021-04-22 11:40:54 189

原创 网络协议 一 网络层( 版本、首部长度、区分服务、总长度、 标识、标志、片偏移生存时间、协议、首部校验和)

网络协议从入门到底层原理网络层网络层首部 - 版本、首部长度、区分服务网络层首部 - 总长度网络层首部 - 标识、标志【实践】ping 的几个用法、wireshark抓包网络层首部 - 片偏移网络层首部 - 生存时间【实践】根据TTL追踪经过路由器网络层首部 - 协议、首部校验和【实践】Wireshark 完整网络层首部【网络协议从入门到底层原理】学习笔记汇总网络互联模型:请求过程:网络分层:网络层网络层数据包(IP数据包,Packet)由 首部、数据 两部分

2021-04-09 22:18:04 484 1

原创 网络协议 一 七层模型、物理层、数据链路层(CSMA/CD协议、Ethernet V2帧、PPP协议)

网络协议从入门到底层原理网络互联模型(了解请求过程、网络分层)物理层(Physical)数字信号、模拟信号数据通信模型信道(单工、半双工、全双工)数据链路层(Data Link)封装成帧透明传输差错检验CSMA/CD协议Ethernet V2帧的格式、Ethernet V2标准PPP协议(Point to Point Protocol)【网络协议从入门到底层原理】学习笔记汇总网络互联模型(了解请求过程、网络分层)请求过程:物理层的1代表前同步码:

2021-03-10 12:13:45 298

原创 网络协议 一 路由的概念、简述数据包的传输过程、网络常见概念、公网、私网、NAT(私网转公网)

网络协议从入门到底层原理路由实践1 - 让4台主机之间可以互相通信实践2 - 让4台主机之间可以互相通信数据包的传输过程(简)第一个包的丢失网络 (Network)、互联网 (internet)、因特网 (Internet)ISP(互联网服务提供商)网络分类(局域网、城域网、广域网)常见接口(FastEthernet、GigabitEthernet、Serial)上网方式(电话线入户、光纤入户、网线入户、无线路由器)公网IP、私网IPNAT(Network Address

2021-03-08 20:53:19 220

原创 网络协议 一 MAC地址、IP地址、子网掩码

网络协议从入门到底层原理MAC地址(40-55-82-0A-8C-6D)MAC地址的表示格式(Windows、Linux)MAC地址操作(ipconfig /all)MAC地址的获取(arp -a)ARP(Address Resolution Protocol)ICMP(Internet Control Message Protocol)IP地址(127.0.0.1)IP地址的组成(网络ID + 主机ID)IP地址的分类(A类、B类、C类、D类、E类)子网掩码的CIDR表示

2021-03-06 09:47:28 428

原创 网络协议 一 OSI参考模型、计算机通信基础 (集线器、网桥、交换机、路由器)

网络协议从入门到底层原理互联网(internet)为什么要学习网络协议客户端-服务器跨平台的原理(Java、C++)网络互连模型(OSI参考模型)计算机之间的通信基础计算机之间的连接方式 - 网线直连计算机之间的连接方式 - 同轴电缆(Coaxial)计算机之间的连接方式 - 集线器(Hub)计算机之间的连接方式 - 网桥(Bridge)计算机之间的连接方式 - 交换机(Switch)计算机之间的连接方式 - 路由器(Router)MAC地址(40-55-82-0A-8C

2021-03-03 16:03:31 418

原创 第 17 章 一 G1回收器(重点)、垃圾回收器总结(重要)、GC日志分析、垃圾回收器的新发展(了解)

由于篇幅, 无缝衔接上篇博客 !7、G1 回收器 (重重点):区域化分代式 (并行回收器) JDK9的默认垃圾回收器7.1、为什么还需要 G1在延迟可控的情况下, 尽可能获取高的吞吐量采用标记-压缩算法既然我们已经有了前面几个强大的 GC ,为什么还要发布 Garbage First(G1)GC?GC一直优化的原因就在于 应用程序所应对的业务越来越庞大、复杂,用户越来越多,没有GC就不能保证应用程序正常进行,而经常造成STW的GC又跟不上实际的需求,所以才会不断地尝试对GC进行.

2021-02-21 08:40:37 493

原创 第 16 章 一 垃圾回收器、七种经典垃圾回收器、CMS回收器(重点)

第 16 章 垃圾回收器1、GC 分类与性能指标1.1、垃圾回收器概述与分类垃圾回收器概述垃圾收集器没有在规范中进行过多的规定,可以由不同的厂商、不同版本的JVM来实现。由于JDK的版本处于高速迭代过程中,因此Java发展至今已经衍生了众多的GC版本。从不同角度分析垃圾收集器,可以将GC分为不同的类型。Java不同版本新特性语法层面:Lambda表达式、switch、自动拆箱装箱、enumAPI层面:Stream API、新的日期时间、Optional、String、集合框架

2021-02-17 21:39:42 270 1

原创 第 15 章 垃圾回收相关概念、System.gc()、内存溢出与内存泄漏、垃圾回收的并行与并发、强软弱虚引用

第 15 章 垃圾回收相关概念1、System.gc() 的理解1.1、System.gc() 方法System.gc() 方法在默认情况下,通过System.gc()者Runtime.getRuntime().gc() 的调用,会显式触发Full GC,同时对老年代和新生代进行回收,尝试释放被丢弃对象占用的内存。然而System.gc()调用附带一个免责声明,无法保证对垃圾收集器的调用(不能确保立即生效)JVM实现者可以通过System.gc() 调用来决定JVM的GC行为。而一般情况下

2021-02-12 17:04:08 249

原创 第 14 章 垃圾回收相关算法、标记-清除、复制、标记压缩、分代收集(重要)、增量收集、分区算法; 可达性分析

第 14 章 垃圾回收相关算法1、标记阶段:引用计数器1.1、标记阶段的目的垃圾标记阶段:判断对象是否存活在堆里存放着几乎所有的Java对象实例,在GC执行垃圾回收之前,首先需要区分出内存中哪些是存活对象,哪些是已经死亡的对象。只有被标记为己经死亡的对象,GC才会在执行垃圾回收时,释放掉其所占用的内存空间,因此这个过程我们可以称为垃圾标记阶段。那么在JVM中究竟是如何标记一个死亡对象呢?简单来说,当一个对象已经不再被任何的存活对象继续引用时,就可以宣判为已经死亡。判断对象存活一般有两种方

2021-02-10 08:27:34 583

原创 第 13 章 一 垃圾回收概述

第 13 章 垃圾回收概述1、垃圾收集面试题回顾 JVM 学习路线关于垃圾收集Java 和 C++语言的区别,就在于垃圾收集技术和内存动态分配上,C语言没有垃圾收集技术,需要我们手动的收集。垃圾收集,不是Java语言的伴生产物。早在1960年,第一门开始使用内存动态分配和垃圾收集技术的Lisp语言诞生。关于垃圾收集有三个经典问题:哪些内存需要回收?什么时候回收?如何回收?垃圾收集机制是Java的招牌能力,极大地提高了开发效率。如今,垃圾收集几乎成为现代语言的标配,即使经过如

2021-02-05 22:37:14 157

原创 RabbitMQ——六种工作模式、SpringBoot整合RabbitMQ

目录一、RabbitMQ入门程序二、Work queues 工作模式三、Publish / Subscribe 发布/订阅模式四、Routing 路由模式五、Topics六、Header七、RPC八、Spring Data Elasticsearch一、RabbitMQ入门程序<dependencies> <dependency> <groupId>org.springframework.boot</grou

2021-01-23 09:16:21 645

原创 Java并发编程(九) : 线程池详解、ThreadPoolExecutor、ScheduledExecutorService、Fork/Join

8. 共享模型之工具8.1 线程池池化技术相比大家已经屡见不鲜了,线程池、数据库连接池、Http 连接池等等都是对这个思想的应用。池化技术的思想主要是为了减少每次获取资源的消耗,提高对资源的利用率。线程池提供了一种限制和管理资源(包括执行一个任务)。 每个线程池还维护一些基本统计信息,例如已完成任务的数量。这里借用《Java 并发编程的艺术》提到的来说一下使用线程池的好处:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。提高响应速度。当任务到达时,任务可以不需要的等到线

2021-01-18 10:14:43 795 2

原创 Java并发编程(八) : 不可变对象设计(String保护性拷贝)、final的使用、享元模式

源码之 LongAdderLongAdder 类有几个关键域// 累加单元数组, 懒惰初始化transient volatile Cell[] cells;// 基础值, 如果没有竞争, 则用 cas 累加这个域transient volatile long base;// 在 cells 创建或扩容时, 置为 1, 表示加锁transient volatile int cellsBusy;cas 锁使用cas实现一个自旋锁// 不要用于生产实践!!!public class Loc

2021-01-17 12:07:56 359 2

原创 Java并发编程(七) : CAS概念、原子操作类(乐观锁思想)、LongAddr和AtomicLong、Unsafe

6. 共享模型之无锁管程即monitor是阻塞式的悲观锁实现并发控制,这章我们将通过非阻塞式的乐观锁的来实现并发控制6.1 问题提出有如下需求,保证account.withdraw取款方法的线程安全 Test5.javapublic class Test5 { public static void main(String[] args) { Account.demo(new AccountUnsafe(10000)); }}class AccountUnsaf

2021-01-17 11:04:36 600

原创 第 12 章 字符串常量池 (String Table)、intern()方法、String的内存结构、相关面试题

第 12 章 StringTable1、String 的基本特性1.1、String 概述String 的概述String:字符串,使用一对 “” 引起来表示String s1 = "mogublog" ; // 字面量的定义方式String s2 = new String("moxi"); // new 对象的方式12String声明为final的,不可被继承String实现了Serializable接口:表示字符串是支持序列化的。实现了Compar

2021-01-16 22:20:56 301

原创 第 11 章 一 执行引擎概述、解释器、JIT编译器-热点代码优化

第 11 章 执行引擎Java到底是编译型语言还是解释型语言?编译程序基本原理1、执行引擎概述包含: 解释器、即时编译器、垃圾回收器作用: 执行引擎(Execution Engine)的任务就是将字节码指令解释/编译为对应平台上的本地机器指令才可以。简单来说,JVM中的执行引擎充当了将高级语言翻译为机器语言的译者。执行引擎位置执行引擎属于JVM的下层,里面包括:解释器、即时编译器、垃圾回收器1.1、执行引擎概述执行引擎概述执行引擎是Java虚拟机核心的组成部分

2021-01-16 20:38:06 229

原创 第 10 章 一 直接内存 (向系统申请的内存)

第 10 章 直接内存1、直接内存概述直接内存不是虚拟机运行时数据区的一部分,也不是《Java虚拟机规范》中定义的内存区域。直接内存是在Java堆外的、直接向系统申请的内存区间。来源于NIO,通过存在堆中的DirectByteBuffer操作Native内存通常,访问直接内存的速度会优于Java堆。即读写性能高。因此出于性能考虑,读写频繁的场合可能会考虑使用直接内存。Java的NIO库允许Java程序使用直接内存,用于数据缓冲区代码示例代码/** * IO

2021-01-15 19:37:32 183

原创 第 9 章 一 对象的实例化步骤、对象头信息(重点)、对象访问定位

第 9 章 对象的实例化内存布局与访问定位1、对象的实例化大厂面试题美团:对象在JVM中是怎么存储的?对象头信息里面有哪些东西?蚂蚁金服:二面:java对象头里有什么对象实例化1.1、对象创建的方式对象创建的方式new:最常见的方式、单例类中调用getInstance的静态类方法,XXXFactory的静态方法Class的newInstance方法:在JDK9里面被标记为过时的方法,因为只能调用空参构造器,并且权限必须为 publicConstructo

2021-01-14 14:31:08 197

原创 《恋上数据结构与算法》排序(六):快速排序

参考 :https://blog.csdn.net/weixin_43734095/article/details/105156039https://morris131.blog.csdn.net/article/details/107444604https://juejin.cn/post/6844904095250120718一、经典十大排序算法快速排序快速排序(Quick Sort)是对冒泡排序的一种改进,采用的是分治策略(一般与递归结合使用),以减少排序过程中的比较次数。.

2021-01-13 17:02:18 184

转载 从输入URL到浏览器显示页面的流程

转载自 : 从输入URL到浏览器显示页面的流程从输入URL到浏览器显示页面的流程当在浏览器中输入域名,敲下回车后,不一会儿浏览器就会显示我们想要的界面。本文将简单介绍这其中经历了什么过程。注意:以下分析基于HTTP请求,并且Web容器使用Tomcat,后端框架使用SSM一、URL解析1、地址解析浏览器会根据你的输入来判断该输入是一条合法的URL,还是需要被搜索的关键词。并且根据你输入的内容进行自动完成、字符编码等操作。2、其他操作目前大部分浏览器都会强制客户端使用HTTPS协议以保证信.

2021-01-12 14:23:59 718

原创 Java并发编程(六) : Java内存模型(JMM-原子性、可见性、有序性)、volatile原理、volatile保证可见性, 有序性、单例设计模式(各种实现分析)

共享模型之内存之前讲的synchronized底层Monitor主要关注的是访问共享变量时,保证临界区代码的 原子性 。下面进一步深入学习共享变量在多线程间的【可见性】问题与多条指令执行时的【有序性】问题一、 Java 内存模型JMM 即 Java Memory Model ,它从Java层面定义了主存、工作内存抽象概念,底层对应着CPU 寄存器、缓存、硬件内存、CPU 指令优化等。JMM 体现在以下几个方面原子性 - 保证指令不会受到线程上下文切换的影响可见性 - 保证指令不会受 cp

2021-01-11 18:09:33 632

原创 Java并发编程(五) : 死锁、哲学家就餐问题、ReentrantLock (锁重入、锁超时、可中断、公平锁、条件变量)、同步模式之顺序控制

4.9 活跃性活跃性相关的一系列问题都可以用ReentrantLock进行解决。4.9.1 死锁有这样的情况:一个线程需要同时获取多把锁,这时就容易发生死锁t1 线程获得A对象锁,接下来想获取B对象的锁;t2 线程获得B对象锁,接下来想获取A对象的锁例。Test28.java4.9.2 检测死锁检测死锁可以使用 jconsole工具;或者使用 jps 定位进程 id,再用 jstack 定位死锁:Test28.java下面使用jstack工具进行演示D:\我的项目\JavaLearing\ja

2021-01-10 19:20:17 829 1

原创 MySQL的索引底层为何使用 B+树?B树和B+树有哪些区别? 硬盘结构介绍、操作系统读取硬盘数据的过程、什么是IO操作?

相关文章 : MySQL 索引底层为什么选择B+Tree一、B+树介绍B+树是B树的变体,常用于 数据库和操作系统的文件系统 中MySQL数据库的索引就是基于B+树实现的B+树的特点:分为 内部节点(非叶子)、叶子节点 两种节点内部节点 只存储key, 不存储具体数据叶子节点 存储key(索引列) 和 具体数据(每一条记录)所有的叶子节点形成一条有序链表 (B树的叶子节点没有链)m阶B+树非根节点的元素数量 x:┌ m/2 ┐ ≤ x ≤ mMySQL中的B+T.

2021-01-10 15:51:16 501

原创 第 8 章 一 方法区的理解, 演变、方法区内部结构(运行时常量池)、方法区垃圾回收、运行时数据区总结

第 8 章 方法区1、栈 堆 方法区的交互关系从内存结构来看方法区的落地实现: JDK7称为永久代, JDK8称为元空间永久代的内存使用的是JVM虚拟机的内存元空间的内存使用的是本地内存(电脑的运行内存)主要用来存放类的类型信息 (Class信息)永久代的内存使用的是JVM虚拟机的内存这次所讲述的是运行时数据区的最后一个部分从线程共享与否的角度来看ThreadLocal:如何保证多个线程在并发环境下的安全性?典型应用就是数据库连接管理,以及独立会话管理栈

2021-01-09 15:26:24 339

原创 MySQL 索引最左前缀原则

MySQL 索引最左前缀原则索引最佳左前缀法则:带头大哥不能死、中间兄弟不能断1、准备数据建表CREATE TABLE IF NOT EXISTS staff ( id INT PRIMARY KEY auto_increment, name VARCHAR(50), age INT, pos VARCHAR(50) COMMENT '职位', salary DECIMAL(10,2));插入数据INSERT INTO staff(name, age, pos, salary)

2021-01-08 23:25:22 698

转载 MySQL高级 一 MySQL结构图、各种索引介绍(索引优化)、Explain性能分析、单表查询优化、排序分组优化、锁机制

MySQL高级一、Mysql逻辑架构1、整体架构了解MySQL体系结构写在开篇:​ 对于信息技术人员来说,世界上最受欢迎的开源数据库系统的体系结构非常重要。MySQL在世界范围内受欢迎的原因很多,但主要原因之一是它的体系结构,尽管有许多大型公司,例如Oracle,Microsoft SQL和DB2,但MySQL的体系结构使其成为大多数开发人员的独特且首选的选择。在本文中,我们将讨论MySQL关系数据库管理系统的内部体系结构。本文适用于新手数据库管理员,数据库开发人员,软件开发人员以及对使

2021-01-08 13:51:42 449

原创 第 7 章 一 堆的概述、年轻代与老年代、分代收集、堆空间常用参数设置、对象分配过程、堆空间分代思想、栈上分配(逃逸分析、标量替换、同步省略)

第 8 章 堆1、堆的核心概述1.1、认识堆内存堆与进程堆针对一个JVM进程来说是唯一的,也就是一个进程只有一个JVM但是进程包含多个线程,他们是共享同一堆空间的对堆的认识一个JVM实例只存在一个堆内存,堆也是Java内存管理的核心区域。Java堆区在JVM启动的时候即被创建,其空间大小也就确定了,堆是JVM管理的最大一块内存空间,并且堆内存的大小是可以调节的。《Java虚拟机规范》规定,堆可以处于物理上不连续的内存空间中,但在逻辑上它应该被视为连续的。所有的线程共享Ja

2021-01-08 11:06:49 364

转载 《恋上数据结构与算法》排序(五):归并排序

转载自 : https://blog.csdn.net/weixin_43734095/article/details/105127138相关 : https://juejin.cn/post/6844904094235426830一、经典十大排序算法前言请务必看一下这个:排序算法前置知识+代码环境准备。当上面的内容都准备好以后,那就开始归并排序吧!归并排序归并排序(MERGE-SORT)是利用归并的思想实现的排序方法,该算法采用经典的分治(divide-and-conquer)策.

2021-01-07 22:47:45 162

Java笔记(超详细).zip

Java基础笔记,共30天,很详细.(附带开发工具Intellij IDEA的使用文档),包含Java基础语法、面向对象、常用API、多线程、IO流、网络、JDBC

2020-02-23

Foundation框架

objective-c foundation框架,NSString,NSArray,等类的常用方法ppt

2017-08-01

空空如也

空空如也

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

TA关注的人 TA的粉丝

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