自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

轻松的小希

有对象的程序员比有技术的程序员更牛逼!

  • 博客(147)
  • 收藏
  • 关注

原创 作为过来人的我是如何写博客的?

目录第一章 当今现状第二章 如何抉择第三章 怎么安装第四章 图床配置第五章 图床对接第六章 写文技巧配套资料,免费下载链接:https://pan.baidu.com/s/1ZpqUYISWViBWb4z0_SPu9A提取码:l43x复制这段内容后打开百度网盘手机App,操作更方便哦第一章 当今现状痛点一:当你一篇文章写完以后,有时候很难以编写一次,在网上各大平台处处发布痛点二:在编辑文章过程中,图片的引入往往会给作者带来很大的麻烦,而且携带很不方便痛点三:部分博客平台并不支

2021-02-07 13:41:24 13148 167

原创 作为过来人的我是如何学技术的?

目录第一章 写这篇文章的初衷第二章 我要不要去培训班第三章 如何学习一门技术第四章 旧的技术要不要学第五章 为啥一定要学源码第一章 写这篇文章的初衷最近有粉丝私信我,想要问问我是如何学习的,还有在学习中遇到的一些问题,我自己也想了想,学习了这么几年,走过了不少的路,踩过了不少的坑,总算是对这个行业有了一定的了解,想要通过此文帮助一下在技术学习中迷茫的各位朋友,以下言论均代表我本人的立场,仅供参考。第二章 我要不要去培训班对于很多人都有疑惑的一大问题,我到底要不要去培训班学习?对于这个问题,我觉得需

2021-02-07 12:57:29 8840 116

原创 Java工程师的成长之路

导读:写这篇文章的主要目的就是把自己学过的知识进行梳理,整个的学习路线是我自己对技术的一个学习规划,向着每一个程序员的终极目标而努力!对象:Java初/中/高级程序员开始:2020-07-20结束:生命不息,学习不止!目录【入门篇】【基础篇】【系统篇】【数据库】【服务器】【进阶篇】【前端篇】【工程篇】【后端篇】【安全篇】【队列篇】【搜索篇】【支付篇】【微服务】【深度篇】【入门篇】文章名称文章地址学习C基础这一篇就够了点击访问练习C编程这一篇就够了点击访问.

2020-09-26 11:05:42 21127 346

原创 个人博客管理系统

项目简介Blog是一款个人博客管理系统,是我和同学上学期的期末大作业,完成的比较仓促,大部分功能已经完成。访问地址:https://gitee.com/caochenlei/blog.git主要页面网站前台分类专栏搜索模块文章详情网站后台分类管理文章添加文章列表轮播管理博主信息网站信息采用技术前端技术栈:技术名称技术版本官方地址React17

2021-07-31 17:09:48 487 58

原创 按钮级权限管理系统

项目简介CommonAdmin是一个按钮级别权限管理平台,包含企业后台最常用的系统模块,代码简洁,开箱即用。访问地址:https://gitee.com/caochenlei/common-admin主要功能登录功能部门管理用户管理角色管理菜单管理日志管理采用技术前端技术栈:技术名称采用版本官方地址vue-element-admin4.4.0点击访问后端技术栈:技术名

2021-07-31 00:59:43 1197 91

原创 模板代码生成器

项目简介CodeBuilder可以帮助你快速生成模板文件,目前支持mysql、oracle、sql server数据库。您可以自己制作代码模板并添加到模板目录,帮助您可以应付各种开发场景。访问地址:https://gitee.com/caochenlei/code-builder使用建议注意:本代码生成器已经提供了一套示例代码数据库的名称全部小写,名称要见名之意,多个单词,用“_”分隔,例如:store数据库表名称全部小写,名称要见名之意,多个单词,用“_”分隔,表备注是必须要写的,例如:t

2021-07-21 14:15:18 156 17

原创 果然新鲜B2C商城

项目简介果然新鲜商城是一个类似小米商城的B2C电商平台,可做毕业设计参考。访问地址:https://gitee.com/caochenlei/fresh-parent项目截图网站首页本地访问:http://manager.fresh.com:9101登录账号:caochenlei登录密码:123456网站后台本地访问:http://fresh.com:9102登录账号:admin登录密码:123456服务监测本地访问:http://dubbo.fresh.com:8090/du

2021-07-21 14:13:54 150 14

原创 微信公众号开发

文章目录第一章 环境准备1.1、开发工具1.2、创建工程1.3、添加依赖1.4、添加模板1.5、测试接口1.6、内网穿透1.7、接入指南第二章 基础支持2.1、获取 AccessToken 令牌2.2、获取微信API接口IP地址2.3、获取微信API回调IP地址第三章 接收消息3.1、接收普通消息3.2、接收事件推送第四章 二维码4.1、生成带参数二维码(临时)4.2、生成带参数二维码(永久)第五章 菜单栏第六章 发送消息6.1、发送普通消息6.2、发送模板消息6.2.1、设置所属行业6.2.2、获取所属行

2021-07-03 16:29:00 274

原创 网络编程学习

目录第一章 NIO基础1.1、环境准备1.2、NIO介绍1.3、三大组件1.3.1、Channel & Buffer1.3.2、Selector1.4、ByteBuffer1.4.1、ByteBuffer 正确使用1.4.2、ByteBuffer 内部结构1.4.3、ByteBuffer 调试工具1.4.4、ByteBuffer 常用方法1.4.4.1、ByteBuffer分配空间1.4.4.2、向 buffer 写入数据1.4.4.3、从 buffer 读取数据1.4.4.4、mark 和 res

2021-06-26 17:02:31 359 5

原创 并发编程学习

目录第一章 共享模型之线程1.1、进程与线程1.2、并行与并发1.3、同步与异步1.4、线程创建方式1.5、线程基本方法1.6、线程安全问题1.7、线程八锁问题第二章 共享模型之管程2.1、monitor原理2.2、synchronized原理2.2.1、轻量级锁2.2.2、锁膨胀2.2.3、自旋优化2.2.4、偏向锁2.2.5、锁消除2.3、wait & notify原理2.3.1、同步模式之保护性暂停2.3.2、异步模式之生产者/消费者2.3.3、同步模式之固定顺序2.3.4、同步模式之交替输出

2021-06-04 16:58:39 1184 58

原创 力扣刷题:DFS篇

目录112. 路径总和题目介绍题目实现113. 路径总和 II题目介绍题目实现17. 电话号码的字母组合题目介绍题目实现22. 括号生成题目介绍题目实现39. 组合总和题目介绍题目实现46. 全排列题目介绍题目实现47. 全排列 II题目介绍题目实现112. 路径总和题目介绍给你二叉树的根节点 root 和一个表示目标和的整数 targetSum ,判断该树中是否存在 根节点到叶子节点 的路径,这条路径上所有节点值相加等于目标和 targetSum 。叶子节点 是指没有子节点的节点。示例 1:

2021-05-29 09:04:40 452 49

原创 力扣刷题:二叉树篇

目录101. 对称二叉树题目介绍[剑指 Offer 28. 对称的二叉树](https://leetcode-cn.com/problems/dui-cheng-de-er-cha-shu-lcof/)题目实现102. 二叉树的层序遍历题目介绍题目实现104. 二叉树的最大深度题目介绍[剑指 Offer 55 - I. 二叉树的深度](https://leetcode-cn.com/problems/er-cha-shu-de-shen-du-lcof/)题目实现110. 平衡二叉树题目介绍[剑指 Offe

2021-05-29 09:01:56 273 43

原创 力扣刷题:动态规划篇

目录322. 零钱兑换题目介绍题目实现5. 最长回文子串题目介绍题目实现518. 零钱兑换 II题目介绍题目实现53. 最大子序和题目介绍题目实现63. 不同路径 II题目介绍[62. 不同路径](https://leetcode-cn.com/problems/unique-paths/)题目实现70. 爬楼梯题目介绍题目实现72. 编辑距离题目介绍题目实现专题 000. 买卖股票的所有问题[121. 买卖股票的最佳时机](https://leetcode-cn.com/problems/best-tim

2021-05-29 08:58:26 475 46

原创 力扣刷题:字符串篇

目录151. 翻转字符串里的单词题目介绍[剑指 Offer 58 - I. 翻转单词顺序](https://leetcode-cn.com/problems/fan-zhuan-dan-ci-shun-xu-lcof/)题目实现242. 有效的字母异位词题目介绍题目实现3. 无重复字符的最长子串题目介绍题目实现344. 反转字符串题目介绍题目实现572. 另一个树的子树题目介绍题目介绍面试题 01.09. 字符串轮转题目介绍题目实现151. 翻转字符串里的单词题目介绍给定一个字符串,逐个翻转字符串中

2021-05-29 08:53:04 220 46

原创 力扣刷题:栈_队列篇

目录150. 逆波兰表达式求值题目介绍题目实现155. 最小栈题目介绍[面试题 03.02. 栈的最小值](https://leetcode-cn.com/problems/min-stack-lcci/)[剑指 Offer 30. 包含min函数的栈](https://leetcode-cn.com/problems/bao-han-minhan-shu-de-zhan-lcof/)题目实现20. 有效的括号题目介绍题目实现225. 用队列实现栈题目介绍题目实现42. 接雨水题目介绍题目实现739. 每日

2021-05-29 08:50:58 286 40

原创 力扣刷题:链表篇

目录1290. 二进制链表转整数题目介绍题目实现138. 复制带随机指针的链表题目介绍[剑指 Offer 35. 复杂链表的复制](https://leetcode-cn.com/problems/fu-za-lian-biao-de-fu-zhi-lcof/)题目实现141. 环形链表题目介绍题目实现160. 相交链表题目介绍[面试题 02.07. 链表相交](https://leetcode-cn.com/problems/intersection-of-two-linked-lists-lcci/)[

2021-05-29 08:48:45 184 29

原创 力扣刷题:数组篇

这里写目录标题1. 两数之和题目介绍题目实现164. 最大间距题目介绍题目实现240. 搜索二维矩阵 II题目介绍[剑指 Offer 04. 二维数组中的查找](https://leetcode-cn.com/problems/er-wei-shu-zu-zhong-de-cha-zhao-lcof/)题目实现26. 删除有序数组中的重复项题目介绍题目实现27. 移除元素题目介绍题目实现75. 颜色分类题目介绍题目实现977. 有序数组的平方题目介绍题目实现剑指 Offer 03. 数组中重复的数字题目介绍

2021-05-29 08:44:44 313 37

原创 力扣刷题:数学_位运算篇

目录1486. 数组异或操作题目介绍题目实现1720. 解码异或后的数组题目介绍题目实现67. 二进制求和题目介绍题目实现7. 整数反转题目介绍题目实现剑指 Offer 15. 二进制中1的个数题目介绍题目实现剑指 Offer 64. 求1+2+…+n题目介绍题目实现1486. 数组异或操作题目介绍给你两个整数,n 和 start 。数组 nums 定义为:nums[i] = start + 2*i(下标从 0 开始)且 n == nums.length 。请返回 nums 中所有元素按位异或(

2021-05-29 08:40:15 237 37

原创 数据结构:哈希表

目录第一章 哈希表介绍第二章 哈希冲突第三章 哈希函数第四章 哈希表实现项目地址:https://gitee.com/caochenlei/data-structures第一章 哈希表介绍设计一个写字楼通讯录,存放该写字楼所有公司的通讯信息,座机号码作为 key(假设座机号码最长是 8 位),公司详情(名称、地址等)作为 value,要求添加、删除、搜索的时间复杂度要求是 O(1),实现代码如下:我们发现上述代码可以实现要求,但是空间复杂度极大,空间利用率极低,非常浪费内存空间,其实数组 c

2021-04-28 08:10:26 4677 46

原创 数据结构:符号表

目录第一章 无序符号表介绍第二章 无序符号表实现2.1、基本结构2.2、添加替换2.3、删除方法2.4、获取方法2.5、获取键集合2.6、获取值集合2.7、代码测试第三章 有序符号表实现第四章 有序符号表实现4.1、基本结构4.2、添加替换4.3、删除方法4.4、获取方法4.5、获取键集合4.6、获取值集合4.7、代码测试项目地址:https://gitee.com/caochenlei/data-structures第一章 无序符号表介绍符号表最主要的目的就是将一个键和一个值联系起来,符号表能

2021-04-22 15:53:42 426 13

原创 数据结构:树进阶

目录第一章 并查集1.1、并查集的介绍1.2、并查集的结构1.3、并查集的实现11.4、并查集的实现21.5、并查集的实现3第二章 二叉堆2.1、二叉堆的介绍2.2、二叉堆的结构2.3、最大堆的实现2.4、最小堆的实现2.5、批量建堆实现第三章 最优二叉树3.1、哈夫曼树的介绍3.2、哈夫曼树的结构3.3、哈夫曼树的实现3.4、哈夫曼编码介绍3.5、哈夫曼编码实现第四章 单词查找树4.1、单词查找树的介绍4.2、单词查找树的结构4.3、单词查找树的实现项目地址:https://gitee.com/ca

2021-04-18 22:24:38 795 50

原创 设计模式:行为型-责任链模式

目录第一章 责任链模式介绍第二章 责任链模式实现2.1、抽象处理者2.2、具体处理者2.3、最终测试类第三章 责任链模式应用项目地址:https://gitee.com/caochenlei/design-pattern第一章 责任链模式介绍责任链模式的介绍:在现实生活中,一个事件需要经过多个对象处理是很常见的场景。例如,采购审批流程、请假流程等。公司员工请假,可批假的领导有部门负责人、副总经理、总经理等,但每个领导能批准的天数不同,员工必须根据需要请假的天数去找不同的领导签名,也就是说员工必

2021-04-11 21:06:49 1193 34

原创 设计模式:行为型-策略模式

目录第一章 策略模式介绍第二章 策略模式实现2.1、抽象策略2.2、具体策略2.3、环境类2.4、测试类第三章 策略模式应用项目地址:https://gitee.com/caochenlei/design-pattern第一章 策略模式介绍策略模式的介绍:在现实生活中常常遇到实现某种目标存在多种策略可供选择的情况,例如,出行旅游可以乘坐飞机、乘坐火车、骑自行车或自己开私家车等,超市促销可以釆用打折、送商品、送积分等方法。在软件开发中也常常遇到类似的情况,当实现某一个功能存在多种算法或者策略,

2021-04-11 19:01:30 345 31

原创 设计模式:行为型-状态模式

目录第一章 状态模式介绍第二章 状态模式实现2.1、环境类2.2、抽象状态类2.3、具体状态类2.4、测试类第三章 状态模式应用3.1、环境类3.2、抽象状态类3.3、具体状态类3.4、测试类项目地址:https://gitee.com/caochenlei/design-pattern第一章 状态模式介绍状态模式的介绍:在软件开发过程中,应用程序中的部分对象可能会根据不同的情况做出不同的行为,我们把这种对象称为有状态的对象,而把影响对象行为的一个或多个动态变化的属性称为状态。当有状态的对象与

2021-04-11 17:34:24 1084 8

原创 设计模式:行为型-解释器模式

目录第一章 解释器模式介绍第二章 解释器模式实现2.1、抽象表达式2.2、终结符表达式2.3、非终结符表达式2.4、环境类2.5、测试类第三章 解释器模式应用项目地址:https://gitee.com/caochenlei/design-pattern第一章 解释器模式介绍解释器模式的介绍:在软件开发中,会遇到有些问题多次重复出现,而且有一定的相似性和规律性。如果将它们归纳成一种简单的语言,那么这些问题实例将是该语言的一些句子,这样就可以用“编译原理”中的解释器模式来实现了。在“编译原理”

2021-04-11 15:47:46 287 11

原创 设计模式:行为型-备忘录模式

目录第一章 备忘录模式介绍第二章 备忘录模式实现2.1、发起人2.2、备忘录2.3、管理者2.4、测试类第三章 备忘录模式应用项目地址:https://gitee.com/caochenlei/design-pattern第一章 备忘录模式介绍备忘录模式的介绍:每个人都有犯错误的时候,都希望有种“后悔药”能弥补自己的过失,让自己重新开始,但现实是残酷的。在计算机应用中,客户同样会常常犯错误,能否提供“后悔药”给他们呢?当然是可以的,而且是有必要的。这个功能由“备忘录模式”来实现。很多应用软件

2021-04-11 12:52:22 979 6

原创 设计模式:行为型-中介者模式

目录第一章 中介者模式介绍第二章 中介者模式实现2.1、抽象中介者2.2、具体中介者2.3、抽象同事类2.4、具体同事类2.5、最终测试类第三章 中介者模式应用项目地址:https://gitee.com/caochenlei/design-pattern第一章 中介者模式介绍中介者模式的介绍:在现实生活中,常常会出现好多对象之间存在复杂的交互关系,这种交互关系常常是“网状结构”,它要求每个对象都必须知道它需要交互的对象。例如,每个人必须记住他(她)所有朋友的电话;而且朋友中如果有人的电话修改

2021-04-11 11:14:39 266 10

原创 设计模式:行为型-观察者模式

目录第一章 观察者模式介绍第二章 观察者模式实现2.1、抽象主题类2.2、具体主题类2.3、抽象观察者2.4、具体观察者2.5、最终测试类第三章 观察者模式应用3.1、具体主题类3.2、具体观察者3.3、最终测试类项目地址:https://gitee.com/caochenlei/design-pattern第一章 观察者模式介绍观察者模式的介绍:气象站可以将每天测量到的温度、湿度、气压等信息,可以用公告的形式发布出去,供给自己的网站或者第三方网站使用,当温度、湿度、气压数据更新的时候,需要实

2021-04-10 21:44:30 609 10

原创 设计模式:行为型-迭代器模式

目录第一章 迭代器模式介绍第二章 迭代器模式实现2.1、抽象迭代器2.2、具体迭代器2.3、抽象聚合类2.4、具体聚合类2.5、最终测试类第三章 迭代器模式应用第一章 迭代器模式介绍迭代器模式的介绍:在现实生活以及程序设计中,经常要访问一个聚合对象中的各个元素,如“数据结构”中的链表遍历,通常的做法是将链表的创建和遍历都放在同一个类中,但这种方式不利于程序的扩展,如果要更换遍历方法就必须修改程序源代码,这违背了“开闭原则”。迭代器模式(Iterator Pattern)是 Java 和 .Net

2021-04-10 17:24:45 607 11

原创 设计模式:行为型-访问者模式

目录第一章 访问者模式介绍第二章 访问者模式实现2.1、抽象访问者类2.2、具体访问者类2.3、抽象元素类2.4、具体元素类2.5、对象结构类2.6、最终测试类第三章 访问者模式应用项目地址:https://gitee.com/caochenlei/design-pattern第一章 访问者模式介绍访问者模式的介绍:在现实生活中,有些集合对象存在多种不同的元素,且每种元素也存在多种不同的访问者和处理方式。例如,公园中存在多个景点,也存在多个游客,不同的游客对同一个景点的评价可能不同;医院医生开

2021-04-10 16:27:10 1231 13

原创 设计模式:行为型-命令模式

目录第一章 命令模式介绍第二章 命令模式实现2.1、抽象命令类2.2、具体命令类2.3、命令接收者2.4、命令请求者2.5、最终测试类第三章 命令模式应用项目地址:https://gitee.com/caochenlei/design-pattern第一章 命令模式介绍命令模式的介绍:在软件开发系统中,“方法的请求者”与“方法的实现者”之间经常存在紧密的耦合关系,这不利于软件功能的扩展与维护。例如,想对方法进行“撤销、重做、记录”等处理都很不方便,因此“如何将方法的请求者与实现者解耦”变得很重

2021-04-10 11:05:56 1155 10

原创 设计模式:行为型-模板模式

目录第一章 模板模式介绍第二章 模板模式实现2.1、抽象父类2.2、具体子类2.3、测试类第三章 模板模式应用项目地址:https://gitee.com/caochenlei/design-pattern第一章 模板模式介绍模板模式的介绍:在面向对象程序设计过程中,程序员常常会遇到这种情况:设计一个系统时知道了算法所需的关键步骤,而且确定了这些步骤的执行顺序,但某些步骤的具体实现还未知,或者说某些步骤的实现与具体的环境相关。例如,去银行办理业务一般要经过以下4个流程:取号、排队、办理具体业

2021-04-09 19:31:58 310 12

原创 设计模式:结构型-代理模式

目录第一章 代理模式介绍第二章 代理模式实现(静态代理)2.1、抽象主题类2.2、真实主题类2.3、代理类2.4、测试类第三章 代理模式实现(JDK动态代理)3.1、抽象主题类3.2、真实主题类3.3、代理类3.4、测试类第四章 代理模式实现(CGLIB动态代理)4.1、抽象主题类4.2、真实主题类4.3、代理类4.4、测试类第五章 代理模式应用项目地址:https://gitee.com/caochenlei/design-pattern第一章 代理模式介绍代理模式的介绍:在有些情况下,一个

2021-04-09 17:52:11 308 13

原创 设计模式:结构型-享元模式

目录第一章 享元模式介绍第二章 享元模式实现2.1、非享元对象2.2、抽象享元对象2.3、具体享元对象2.4、享原工厂对象2.5、最终测试类第三章 享元模式应用项目地址:https://gitee.com/caochenlei/design-pattern第一章 享元模式介绍享元模式的介绍:在面向对象程序设计过程中,有时会面临要创建大量相同或相似对象实例的问题。创建那么多的对象将会耗费很多的系统资源,它是系统性能提高的一个瓶颈。例如,围棋和五子棋中的黑白棋子,教室里的桌子和凳子等。这些对象有很

2021-04-09 16:11:46 265 8

原创 设计模式:结构型-外观模式

目录第一章 外观模式介绍第二章 外观模式实现2.1、关系依赖图2.2、图形接口类2.3、图形实现类2.4、外观角色类2.5、最终测试类第三章 外观模式应用项目地址:https://gitee.com/caochenlei/design-pattern第一章 外观模式介绍外观模式的介绍:在现实生活中,常常存在办事较复杂的例子,如办房产证或注册一家公司,有时要同多个部门联系,这时要是有一个综合部门能解决一切手续问题就好了。软件设计也是这样,当一个系统的功能越来越强,子系统会越来越多,客户对系统的

2021-04-07 14:05:10 331 9

原创 设计模式:结构型-组合模式

目录第一章 组合模式介绍第二章 组合模式实现(透明式)2.1、透明式介绍2.2、抽象构件2.3、树叶构件2.4、树枝构件2.5、客户端测试第三章 组合模式实现(安全式)3.1、安全式介绍3.2、抽象构件3.3、树叶构件3.4、树枝构件3.5、客户端测试第四章 组合模式应用项目地址:https://gitee.com/caochenlei/design-pattern第一章 组合模式介绍组合模式的介绍:组合模式(Composite Pattern)又叫“整体-部分”模式,是用于把一组相似的对象当

2021-04-05 20:59:53 417 13

原创 数据结构:图

目录第一章 图1.1、图的定义1.2、特殊的图1.3、图的结构1.4、图的分类第二章 无向图2.1、无向图的术语2.2、无向图的实现2.3、无向图的搜索2.3.1、深度优先搜索连通数量2.3.2、广度优先搜索连通数量2.4、无向图的路径2.4.1、深度优先搜索有效路径2.4.2、广度优先搜索最短路径2.5、无向环的判断第三章 有向图3.1、有向图的术语3.2、有向图的实现3.3、有向图的搜索3.3.1、深度优先搜索连通数量3.3.2、广度优先搜索连通数量3.4、有向图的路径3.4.1、深度优先搜索有效路径3

2021-03-31 14:43:35 3602 76

原创 图解算法:KMP算法

目录第一章 暴力匹配实现第二章 KMP算法介绍第三章 KMP算法原理第四章 KMP的匹配表第五章 KMP算法实现项目地址:https://gitee.com/caochenlei/algorithms第一章 暴力匹配实现【问题描述】有一个字符串 str1 = “BBC ABCDAB ABCDABCDABDE”,和一个子串 str2 = “ABCDABD”,现在要判断 str1 是否含有 str2,如果存在,就返回第一次出现的位置,如果不存在,就返回-1。【问题思路】【代码实现】publ

2021-03-25 19:32:31 4330 49

原创 数据结构:树基础

目录第一章 树1.1、树的定义1.2、树的术语第二章 二叉树2.1、二叉树的定义2.2、二叉树的术语2.3、二叉树的性质第三章 二叉查找树3.1、BST的定义3.2、BST的结构3.3、BST的添加3.4、BST的获取3.4.1、获取指定值3.4.2、获取最小键3.4.3、获取最大键3.4.4、获取树深度3.5、BST的删除3.5.1、删除最小结点3.5.2、删除最大结点3.5.3、删除指定结点3.6、BST的遍历3.6.1、前序遍历3.6.2、中序遍历3.6.3、后序遍历3.6.4、层序遍历3.7、BST

2021-03-22 15:01:55 3189 37

原创 设计模式:结构型-装饰器模式

目录第一章 装饰器模式介绍第二章 装饰器模式实现2.1、关系依赖图2.2、图形接口类2.3、图形实现类2.4、图形修饰者接口类2.5、图形修饰者实现类2.6、最终测试类第三章 装饰器模式应用第一章 装饰器模式介绍装饰器模式的介绍:在软件开发过程中,有时想用一些现存的组件,这些组件可能只是完成了一些核心功能,但在不改变其结构的情况下,可以动态地扩展其功能,所有这些都可以釆用装饰器模式来实现。装饰器模式(Decorator Pattern)的定义:指在不改变现有对象结构的情况下,动态地给该对象增加一些职

2021-03-13 19:55:08 807 13

空空如也

空空如也

空空如也

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

TA关注的人 TA的粉丝

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