自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 VsCode设置插件默认安装位置

VsCode设置插件默认安装位置

2023-01-25 23:38:38 6829

原创 线性表之链表

线性表之链表

2022-06-08 02:12:10 234

原创 VsCode配置C/C++ debug模式

VsCode 配置C/C++ debug模式

2022-05-28 00:09:42 5056

原创 线性表之顺序表

线性表之顺序表:提示:这里可以添加要学的内容例如:删除顺序表中最小值的元素(假设唯一),并由函数返回被删元素的值;空出位置由最后一个元素填补,若顺序表空,则退出将顺序表所有元素逆置,要求S(n)=O(1)对长度为n的顺序表L,删除表中所有值为x的元素从有序顺序表中删除其值在给定值s与t之间(s<t)的所有元素,若s或t不合理或顺序表为空,则退出从顺序表中删除其值在给定值s与t之间(包含s和t,s<t)的所有元素,若s或t不合理或顺序表为空,则退出从有序顺序表中删除所有其值重复的

2022-05-26 00:06:29 183

原创 5judge3

typedef struct{ unsigned char head[2]; unsigned char cmd[2]; unsigned char cmd_count; unsigned char sum;} FiveJudgeThree;#include "data.h"FiveJudgeThree five_judge_three;#include <stdio.h>#include "main.h"test(unsigned sho

2022-05-10 00:33:12 95

原创 【22】解释器模式

设计场景:一种特定类型的问题发生的频率足够高,那么可能就值得将该问题的各个实例表述为一个简单语言中的句子,这样可以构建一个解释器,该解释器通过解释这些句子来解决该问题。举一个简单的例子,给出一个指定格式的字符串,在另一个字符串中搜索与其匹配的子串,显而易见会想到正则表达式,正则表达式便是解释器模式的一种应用。问题描述:1、解释器模式:给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用该表示来解释语言中的句子。2、目的:解释器就是当一种语言需要解释时,并且该语言中的多个句子可

2022-01-24 00:01:04 236

原创 【23】访问者模式

设计场景:某个系统有比较稳定的数据结构,同时又有易于变化的算法,代码实现的过程中希望实现开放-封闭原则,也就是说在增加算法的过程中不会影响到数据结构类,对两者进行解耦合操作,同时在不修改现有的算法类的基础上对算法进行扩展。问题描述:1、访问者模式:可以说它是一个操作,作用于某对象结构中的各个元素;可以在不改变这些元素的前提下定义作用于这些元素的新操作。【注:可以将对象结构看作基类,各个元素看作子类】2、访问者模式的特点:(1)适用条件:适用于数据结构相对稳定的系统,它可以将数据结构和作用于数据

2022-01-23 15:19:47 409

原创 【19】命令模式

设计场景:需求中有不同的请求,同时可能需要对这些请求进行排队或者记录请求日志,以及支持可撤销的操作;问题描述:1、命令模式:将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化,对请求排队或记录请求日志,以及支持可撤销的操作;2、命令模式的优点:(1)易设计一个命令队列;(2)易将命令计入日志;(3)允许接受请求的一方拥有否决权,接受或不接受;(4)易实现命令的撤销和重做;(5)易增加新的具体命令,具体命令间互不干扰;(6)易将请求、如何操作两者分开;UML图:

2022-01-17 21:52:43 314

原创 【1185】一周中的第几天

场景:题目:一周中的第几天(1)需求:给你一个日期,请你设计一个算法来判断它是对应一周中的哪一天;输入为三个整数:day、month 和 year,分别表示日、月、年。您返回的结果必须是这几个值中的一个 {“Sunday”, “Monday”, “Tuesday”, “Wednesday”, “Thursday”, “Friday”, “Saturday”}。(2)示例:示例 1:输入:day = 31, month = 8, year = 2019输出:“Saturday”(3)提示:给出

2022-01-15 19:25:57 245

原创 【202】快乐数

场景:题目:快乐数(1)需求:编写一个算法来判断一个数 n 是不是快乐数,如果 n 是快乐数就返回 true ;不是,则返回 false ;(2)定义:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是 无限循环但始终变不到 1;如果 可以变为 1,那么这个数就是快乐数;(3)示例:示例 1:输入:n = 19输出:true解释:12 + 92 = 8282 + 22 = 6862 + 82 = 10012 + 02 + 02

2022-01-12 21:59:59 235

原创 【20】有效的括号

场景:1、题目:给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串 s ,判断字符串是否有效。2、满足条件:(1)左括号必须用相同类型的右括号闭合;(2)左括号必须以正确的顺序闭合;3、示例输出示例 1:输入:s = “()”输出:true示例 2:输入:s = “()[]{}”输出:true示例 4:输入:s = “([)]”输出:false4、提示(1)1 <= s.length <= 104;(2)s 仅由括号 ‘()[]{}’

2022-01-11 00:16:34 168

原创 【14】最长公共前缀

场景:(1)题目最长公共前缀,编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。(2)示例输出示例 1:输入:strs = [“flower”,“flow”,“flight”]输出:“fl”示例 2:输入:strs = [“dog”,“racecar”,“car”]输出:""解释:输入不存在公共前缀。(3)提示1 <= strs.length <= 2000 <= strs[i].length <= 200strs[i

2022-01-10 00:43:11 246

原创 【13】罗马数字转整数

场景:(1)题目回文数,给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。(2)示例输出示例 1:输入:x = 121输出:true示例 2:输入:x = -121输出:false解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入:x = 10输出:false解释:从右向左读, 为 0

2022-01-10 00:26:58 225

原创 【9】回文数

场景:(1)题目回文数,给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。(2)示例输出示例 1:输入:x = 121输出:true示例 2:输入:x = -121输出:false解释:从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入:x = 10输出:false解释:从右向左读, 为 0

2022-01-10 00:20:23 245

原创 【1】两数之和

场景:(1)题目两数之和,给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。(2)示例输出示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2:输入:nums = [3,2,4], target = 6输出:[1,2]示例 3:输入:nums = [3,3],

2022-01-10 00:14:37 181

原创 vscode 配置 leetcode 插件

vscode 配置 leetcode 插件:

2022-01-09 00:06:00 2048

原创 【17】单例模式

设计场景:在整个系统周期内,保证一个类只有唯一的一个实例被创建;问题描述:(1)单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点;(2)通常我们可以让一个全局变量使得一个对象被访问,但是它不能防止你实例化多个对象,一个最好的方法就是,让类自身负责保存它的唯一实例,这个类可以保证没有其他实例可以被创建,并且它提供一个访问该实例的方法;(3)单例模式分为懒汉式和饿汉式,区别在于创建实例的时间不同,同时还要考虑其线程安全性;(4)懒汉式:程序运行中,实例并不存在,只有当需要该实例时,才

2022-01-08 22:25:24 176

原创 【10】观察者模式

项目场景:待更新问题描述:待更新 代码实现:#pragma once#include<vector>#include<string>using namespace std;#include"observe.h"// 主题类class Subject{public: // 添加观察者 void attach(Observe* observe) { m_observes.push_back(observe); } // 删除观察者 简化操作

2022-01-03 14:46:11 248

原创 【9】建造者模式

设计场景:用于创建一些复杂的对象,这些对象内部构建间的建造顺序通常是稳定的,但对象内部的构建通常面临着复杂的变化。模板模式特点:(1)当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时适用的模式;(2)最近看的有点绕,不分析了,困了,先睡了,缓缓再整理更新 代码实现:(1)框架代码#pragma once#include<iostream>#include<string>#include<vector>using namesp

2022-01-03 02:07:32 321

原创 【8】外观模式

设计场景:某一系统需要维护,但是直接对老系统修改和扩展会产生很多问题,考虑通过外观模式解决此问题外观模式:(1)为子系统中的一组接口提供一个一致的高层接口,这个接口使得这一系统更加容易使用;代码实现: 解决方案:分两个小组,一个开发 Facade 与老系统的交互,另一个只需要了解 Facade 的接口,直接开发新系统调用这些接口即可#pragma once#include<iostream>// 子系统 A 类class SYSTEM_A{public: vo

2022-01-02 19:47:08 211

原创 【7】模板模式

设计场景:类与类之间出现很多相同的行为,导致在子类的实现过程中产生重复代码模板模式特点:(1)提供了一个很好的代码复用平台;(2)将子类之间共有的不变的行为搬移到父类,从而体现出去除了子类中重复代码的优势;(3)当不变的行为和可变的行为在方法的子类实现中混合在一起时,不变的行为就会在子类间重复出现,通过模板方式将这些不变的行为搬移到父类中,帮助子类摆脱重复的不变的行为的纠缠;代码实现:(1)框架代码#pragma once#include<iostream>using

2022-01-02 18:38:01 216

原创 【5】工厂模式

设计场景:工厂模式实现计算机基础加减乘除运算原因分析:简单工厂模式与工厂模式的区别写了一半还没写完,先睡了代码如下:#include"factory.h"#include"add_factory.h"#include"sub_factory.h"#include"mul_factory.h"#include"div_factory.h"#include"add_operation.h"#include"sub_operation.h"#include"mul_operatio

2021-12-30 23:42:04 264

原创 【4】代理模式

场景:设计场景:男孩暗恋女孩 ,但女孩不认识男孩,男孩的伙伴认识女孩,于是男孩委托伙伴向女孩送花解决方案:设计模式:使用代理模式,将送礼物作为追求者和代理的公共接口。抽象类:类中至少有一个纯虚函数,抽象类不能生成对象,作为父类,其子类必须实现纯虚函数的定义,否则子类成为抽象类,纯虚函数实现定义后成为虚函数。接口:是一种特殊的抽象类,类中没有定义任何的成员变量,所有的成员函数都是公有的,所有的成员函数都是纯虚函数。代码如下:#include"schoolGirl.h"#include"

2021-12-30 22:54:21 131

原创 UML类图

UML类图优雅的代码,简练、易维护、易扩展、易复用UML类图更助于理解面向对象类图:动物;接口图:飞翔;继承关系:鸟 继承 动物;实现接口:大雁 实现 飞翔接口;关联关系:企鹅 需要了解 气候;聚合关系:雁群是整体,大雁是部分,两者存在的周期不同;组合关系:鸟是整体、翅膀是部分,两者存在周期相同;依赖关系:动物依赖氧气、水,动物的存在前提是有足够的氧气和水;...

2021-12-29 01:00:36 601

原创 【2】策略模式&简单工厂模式

一、策略模式&简单工厂模式1、需求:某商场三种收费方式、联想商场收费方式的复杂性编写合适的代码、采用面向对象编程;2、思路:仅仅使用简单工厂模式实现当前需求,不利于后期维护和扩展;仅仅使用策略模式,在编码过程中过程比较笨拙繁琐,难以和客户端进行很好的交互;使用策略模式&简单工厂模式恰好;代码如下(示例):#pragma onceusing namespace std;// 基类-----现金收费抽象类-----抽象策略class CashSuper{public:

2021-12-28 22:38:20 656

原创 【1】简单工厂模式

一、简单工厂模式1.封装体现面向对象的封装的思想代码如下(示例):#pragma once#include<iostream>#include<string>using namespace std;// 操作类class Operation{public: enum oper{add,sub,mul,div}; static double getResult(double numberA, double numberB, int operate); //

2021-12-26 00:28:01 217

原创 Windows上的64位和32位的区别

一、Windows上的64位和32位的区别在C++编码过程中,不同位数的系统对于变量的字节数是不同的。那么计算机为什么有位数不同的区别呢?1.从计算机系统和硬件来看CPU单次处理数据的能力是32位还是64位,取决于计算机安装的系统是32位还是64位。位 也称作 字长,是CPU通用寄存器的数据宽度,是数据传递和处理的基本单位,表示CPU单词能并行处理的二进制位数,字长总是8的整数倍。2.从软件程序来看计算机系统上的软件程序分为32位和64位,它们都是经过编程语言编译后的可执行文件,比如C

2021-08-09 22:12:36 780

原创 Vscode配置 C/C++

VsCode 配置 C/C++ 环境:根据up主小甲鱼发布的配置视频做了简单的总结PC:Windows10一、安装C/C++编译器二、Vscode配置C/C++环境一、下载安装C/C++编译器(1)MinGW 下载地址链接(2)将下载好的文件双击安装即可,安装路径可以选择在 C:/(3)安装好之后到C盘下找到MinGW并打开进入bin,将 C:\MinGW\bin 该路径添加到计算机环境变量中,在用户变量(U)中的Path中新建添加即可。(4)cmd 中运行 g++ --version

2021-07-31 22:50:39 232

原创 Anaconda下载安装

Anaconda地址 :3.6的对应的是 Anaconda 5.2,5.3以后的都是python 3.7的anaconda官网下载地址1anaconda官网下载地址2anaconda清华开源下载地址Anaconda3.7 切换python3.7为pythoh3.6...

2020-12-22 14:45:15 200

原创 RBAC权限管理设计思想

RBAC权限管理设计一、概述二、权限模型三、RBAC模型什么是RBAC模型基本模型RBAC0角色分层模型RBAC1角色限制模型RBAC2统一模型RBAC3基于RBAC的延展——用户组总结:一、概述不管是开发手机APP,Web网站还是小程序等项目,基本上都需要一个后台管理系统的支撑。而每个后台管理系统都有一个通用的模块就是用户权限管理模块,权限管理是所有后台系统的都会涉及的一个重要组成部分,主要目的是对不同的用户访问资源进行权限的控制,避免因权限控制缺失或操作不当引发的风险问题,如操作错误,隐私数据泄露等

2020-12-22 14:42:56 2811

原创 好看的电脑壁纸网站

HD Desktop Wallpapers网址链接:https://hddesktopwallpapers.in/

2020-11-26 18:38:31 618

原创 HTTP证书

Microsoft Windows [版本 10.0.18362.720](c) 2019 Microsoft Corporation。保留所有权利。C:\Users\iamhere>d:D:\>cd\jdk\binD:\jdk\bin>keytool密钥和证书管理工具命令:-certreq 生成证书请求-changealias...

2020-04-26 22:16:41 1470

原创 tomcat首页welcome-file-list设置与url-pattern匹配规则

一、welcome-file-list标签下可以设置多个首页,容器启动后会在根目录下依次查找匹配的物理存在的文件,返回第一个找到的文件,没有找到报404错误。<welcome-file-list> <welcome-file>a.jsp</welcome-file> <welcome-file>b.html</welco...

2020-04-02 10:18:57 209

原创 Java 网络编程 文件上传

文件上传分析图解【客户端】输入流,从硬盘读取文件数据到程序中。【客户端】输出流,写出文件数据到服务端。【服务端】输入流,读取文件数据到服务端程序。【服务端】输出流,写出文件数据到服务器硬盘中。public class TcpClient { public static void main(String[] args) throws IOException { ...

2020-03-27 17:49:02 147

原创 java 网络编程 简单的TCP网络程序

小贴士:回送地址(127.x.x.x) 是本机回送地址(Loopback Address),主要用于网络软件测试以及本地机进程间通信,无论什么程序,一旦使用回送地址发送数据,立即返回,不进行任何网络传输。

2020-03-27 17:21:27 207

原创 逆波兰计算器

逆波兰计算器需求:Java、支持四则运算、小括号、多位数结果函数主函数、中缀表达式字符串转list集合、中缀表达式list集合转后缀表达式list集合、运算、优先级比较实现类主函数实现public static void main(String[] args) { /** * 中缀表达式转后缀表达式 * 目的:1+((2+3)*4)-5 =&g...

2020-03-26 22:52:05 52

原创 微信小程序之谷歌浏览器获取网易云音频具体详细地址

微信小程序之谷歌浏览器获取网易云音频具体详细地址打开网易云官网逐渐进行到以下页面按下F2出现以下界面,点击到Network下按下F5,在all中可以看到多种类型的文件,一般medio文件最大,这时在单击size,会自动排列,选中最大文件点击它。-点击完最大文件后,再点击Header,则Request URL便是我们需要的路径...

2019-10-30 20:38:17 410

原创 Jquery实现电影院购票订座功能

项目工程结构图JQuery插件库网址jQuery在线选座位插件seat-charts特效代码:这是一款基于JQuery实现的在线选座位插件seat-charts源码,是一款适合机票,电影票,客车票选座的jquery.seat-charts插件。点击左侧的座位即可在右侧即时显示座位信息,并且可以有计算累加的功能。代码模块分析html主体<div class="conta...

2019-10-22 21:13:03 5515 10

原创 vs2019配置Mysql数据库

vs2019配置MySQL博客链接‘localtime’: This function or variable may be unsafe. Consider using localtime_s instead.解决方法链接返回值为 -1073741515 (0xc0000135) '未找到依赖 dll’解决方法:将本人C盘下MySQL下lib中的libmysql.dll复制粘贴到C++项目当...

2019-10-08 21:20:42 7075

原创 Android Studio 正确导入 Github 开源中的 酷欧天气(coolweather-master)

Android Studio 正确导入 Github 开源中的 酷欧天气(coolweather-master)第一步登录Github,输入github,搜索进入Github官网接着左上角搜索酷欧,选择如图所示Java语言的项目,点击下载压缩包文件。下载好之后,本人将压缩包coolweather-master解压到D盘自己创建的文件android_openyuan_project下。同时,本...

2019-08-10 16:58:02 867

空空如也

空空如也

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

TA关注的人

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