自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 如何通过SPI机制去实现读取配置文件并动态加载对应实现类

最近写完鱼皮的RPC项目后,打算整理出来一些编程技巧的模版。有两种实现:1.ServiceLoader 2.SpiLoader首先在resource目录下创建 META-INF/services 目录,并且创一个名称为对应要实现的接口的包路径的空文件,文件中包含对应接口实现类的 完整类路径

2024-07-09 00:56:06 602

原创 使用AOP思想实现开闭原则下的流水日志输出

Retention(RetentionPolicy.RUNTIME)注解用于表示注解的保留策略,在运行时保留注解,意味着注解不仅会被编译到字节码文件中。对应的bean中订单属性名称会有差异,如何优雅的解决,后面会用一个转换接口,来获取对应的日志类。现在有两个订单场景,一个保存订单,一个为更新订单。通过实现Convert接口来抽取公共组件,获取想要的标准模型。表示该注解可以应用于方法和类(包括接口、枚举)上。

2024-07-07 20:58:11 350

原创 什么是Java泛型擦除?

JDK1.5之后引入泛型擦除的概念。

2024-07-03 01:55:55 244 2

原创 什么是AOP思想?

文章参考up:皮卡侯

2024-07-03 01:50:11 371

原创 进程的概念

为什么会引入进程:一个用户可以引入同种多个程序。也就是说一个程序可以同时拥有两个进程,所以引入进程的概念。2 ->基于时间片的抢占式调度/基于优先级的抢占式调度。

2023-05-23 22:49:03 205

原创 Laravel 知识整合 1 路由

Laravel是一种路由:routes/web.php控制器:app/HTTP/Controllers(可以直接用命令行生成)模型:app/student.php视图:resources/views/student/index.blade.php目录结构:# 对参数局部约束////# 全局约束//创建项目。

2023-05-10 15:10:47 1165

原创 cs231n(图像分类-线性分类)

b 为偏置项,一个10元素的常数向量,不与训练数据交互,而只会给我们一些数据独立的偏好值。好比说如果数据集不平衡,猫数量比其他动物要来的多,那么与猫对应的偏差元素就会比其他的要高。w的值计算在一节损失函数那一张会讲到。

2023-03-14 20:16:07 149

原创 cs231n计算机视觉课程-(数据驱动方法)

姿态、环境、遮挡这些问题算法都因该是robust课程中提到具体写一个识别猫咪的算法是不稳定的,容易出错的。所以提出了Data-Driven Approach的方法一个是训练函数, 这函数接受图片和标签,然后输出标签另一个则是预测函数,输入model对图像标签进行预测。

2023-03-09 19:24:40 343

原创 EOJ.整数排序

解释:to_string会在排序时调用多次,卡常数复杂度。

2023-03-08 21:10:24 154

原创 EOJ.框体排列

先从小到大,给节点排序,然后定义i和j,i为框体左端,j为框体右端,去招待可以框体括到的最远的点j-1,然后令i=j,循环操作。

2023-03-08 20:42:14 196

原创 EOJ.逆序对计数

利用归并排序,在合并的过程中去判断是否有逆序对,如果前面那一组中大于后面一组的元素,则前面一组那个元素包括自己后面的元素都能和后面那一个元素组成逆序对。

2023-03-08 20:27:26 115

原创 人工智能ch2习题

数据庞大,需要考虑如何进行剪枝优化,第一行不满足情况,就可以直接进行回溯直到第一行满足,才进行到第二行的搜索。bitset是C++stl模块的一个容器,用于表示一个固定长度的二进制序列,即位集合。可以方便位运算和查询位。这里提供另外一个优化搜索的预处理手段,是借鉴了我室友的代码,学习到了bitset的用法。优先考虑BFS的例子:EOJ上的第一题【八数码问题】优先考虑DFS的例子:本次作业第一题。

2023-03-08 08:17:30 566

原创 python数据分析01

常见的例子是编写一个函数可以接受任意类型的序列(list、tuple、ndarray)或是迭代器。字典可能是Python最为重要的数据结构。它更为常见的名字是哈希映射或关联数组。它是键值对的大小可变集合,键和值都是Python对象。,可以显示对象的信息。用切边可以选取大多数序列类型的一部分,切片的基本形式是在方括号中使用。迭代一个序列时,你可能想跟踪当前项的序号。判断一个对象是否遵循迭代协议,判断是否是可迭代的使用。元组是一个固定长度,不可改变的Python序列对象。的一个好方法是计算序列(唯一的)

2023-01-20 21:00:59 103

原创 python常用的第三方模块

Python内置的urllib模块,用于访问网络资源。但是,它用起来比较麻烦,而且,缺少很多实用的高级功能。而requests处理URL资源特别方便。提供了一系列绘图方法,让我们可以直接绘图。比如要生成字母验证码图片。时,就可以对其检测编码。URL 统一资源定位符 :协议 网址虚拟目录 文件名 锚。是因为PIL无法定位到字体文件位置,提供绝对路径即可。对于一个带参数的URL,传入一个dict作为。字段,表示检测的概率是1.0(即100%))这里用到的了URL的概念,去查了一下。

2023-01-20 11:56:48 656

原创 python学习1/17(IO编程)

此外,如果没有错误发生,可以在except语句块后面加一个else,当没有错误发生时,会自动执行else语句Python的错误其实也是class,所有的错误类型都继承自,所以在使用except时需要注意的是,它不但捕获该类型的错误,还把其子类也“一网打尽”。第二个except永远也捕获不到,因为是ValueError的子类,如果有,也被第一个except给捕获了。

2023-01-19 13:33:09 121

原创 深度学习笔记(python 面向对象高级编程)

(最核心的部分)深度学习解决了怎么提取特征?python入门知识来判断对象类型,使用type()函数函数输入是x和y,输出是它们的积x*y有没有既能检查参数,又可以用类似属性这样简单的方式来访问类的变量呢?对于追求完美的Python程序员来说,这是必须要做到的!Python内置的@propertyMixIN的目的就是给一个类增加多个功能,这样,在设计类的时候,我们优先考虑通过多重继承来组合多个MIxIn的功能,而不是设计多层次的复杂的继承关系。

2023-01-17 17:41:48 277

原创 深度学习笔记 1/15

img = cv2.imread('pic.jpg', cv2.IMREAD_GRAYSCALE)#灰度图读取。·cv2.VideoCapture可以捕获摄像头,用数字来控制不同的设备,例如0,1。读取图片函数,opencv的读取格式是BGR。0-255.有很多像素点组成的,矩阵。·如果是视频文件,直接指定好路径即可。0表示任意键终止,否则等待x毫秒。计算机眼中的图像长什么样?

2023-01-15 23:43:39 87

原创 EOJ.地下迷宫探索

DFS:首先访问出发顶点v;选择一个与v相邻接且未被访问过的顶点w访问之,再从w开始进 行深度优先搜索;每当到达一个其所有相邻接的顶点都已被访问过的顶点,就从 最后所访问的顶点开始,依次退回到尚有邻接顶点未曾访问过 的顶点u,并从u开始进行深度优先搜。n个顶点和m条边,因为DFS对邻接表中的每个结点(链表中的结 点)至多检查一次,共有2m个结点,所以执行时间为O(n+m)。考察点:深度优先、图。

2022-12-16 14:39:48 221

原创 EOJ.树的层号表示法

单点时限: 2.0 sec内存限制: 512 MB

2022-11-02 13:48:39 161

原创 Verilog HDL概念01

◼HDL(Hardware Description Language)硬件描述语言是对硬件电路进行行为 描述、寄存器传输描述或者结构化描述的一种语言。◼FPGA作为可编程硬件,采用HDL语言作为编程语言基本结构:◼ Verilog HDL程序是由模块构成的。每个模块嵌套在module和endmodule声明语句中。每个模块要进行端口定义,并说明输入输出端口,然后对模块的功能进行行为逻辑描述。模块中的时序逻辑部分在always块的内部,在always块中只能对寄存器变量赋值。

2022-10-27 14:24:28 342

原创 利用哈希表统计关键字出现频率

1、hashnode结构中word中如果使用char* word,要记得分配其空间,最好还是使用char word【20】2、scanf()不会读入‘\n’,所以要加一个getchar(),统计每个单词的散列值的出现频率,并按下面图的格式输出。3、当使用h(k)=k mod m 的除法散列法时,m最好选取一个不接近2或10的整数幂的素数。个单词,估算一次查找的平均比较次数。

2022-10-26 22:00:54 948

原创 归并排序源代码

【代码】插入排序源代码。

2022-09-06 18:51:33 237

原创 面向对象程序设计C++知识点复习汇总04

如果希望对操作的所有操作数进行隐式转换,则实现该转换的函数必须是接受常量引用形参或非引用形参的非成员函数。二元操作符可以由接受一个形参的非静态成员函数(另一个操作数是对象本身)或接受两个形参的非成员函数定义。如果一个类的所有成员函数都是另一个类的友元,则可以将这个类声明为另一个类的友元类。友元可以访问类的所有成员,但它不属于类。一个类的成员函数可以是另一个类的友元。使用成员函数或非成员的特定操作符?静态成员函数具有属性[1][2]。[1]函数可以访问私有成员。[2]函数在类的作用域中。大部分符号可以重载,.

2022-08-27 19:22:44 298

原创 面向对象C++知识点汇总笔记03

成员对象的构造函数的参数必须由类的构造函数在initializer_list中提供。与成员对象一样,常量和引用成员必须在构造函数定义中使用初始化式而不是赋值进行初始化。除非绑定到引用或用于初始化命名对象,否则临时对象将在创建它的完整表达式的末尾销毁。在非静态成员函数中,关键字this是指向函数被调用对象的指针。结构体和类的区别:在结构体中的成员是公共的,在类中是私有的。临时对象可以用作const引用或命名对象的初始化式。在某些类中,它们的数据成员是另一个类的类型。必须在类的构造函数执行之前构造成员对象。..

2022-08-26 00:09:03 241

原创 面向对象程序设计(基于C++)笔记5.19(关于模板的使用)

多态性通过虚函数表来实现。但对于一些比如形状这种抽象的类,这种代码是很难实现的。class Shape { public: virtual void rotate(int); virtual void draw(); virtual bool is_closed(); …}; /* it is difficult to define rotate and draw operations for some general shapes */......

2022-08-25 20:10:04 198

原创 面向对象C++知识点复习汇总02

在不同的编译单元中,全局变量的初始化顺序没有保证。返回引用的函数可以替代全局变量。最好尽量减少全局变量的使用。名称空间可以避免名字冲突。

2022-08-25 19:58:03 320

原创 面向对象C++知识要点汇总笔记01

如果返回值结果为假,那么函数会互换他们的位置 如果返回结果为真,就保持原来的位置不变。参数传递和函数返回的语义是初始化(不是赋值),return语句被认为用来初始化函数类型的临时对象,这里的i和r相当于共用了一个memory,而x是另外开了一个存储空间copy了i的值。T&:实参的类型必须与形参的类型完全匹配,实参必须是一个变量(左值)一般来说,内联函数提高了效率,但增加了可执行文件的长度。不会改变函数语义,从而消除了函数的额外执行开销。在不同的非命名空间范围中声明的函数是不可以重载的。

2022-08-24 16:39:40 239

原创 EOJ.【花狮望楼】

单点时限: 2.0 sec内存限制: 512 MB

2022-08-20 18:47:34 106

原创 EOJ.花狮区间排序

单点时限: 2.0 sec内存限制: 512 MB

2022-08-20 18:42:54 119

原创 EOJ.最短路径

注意点:空间代替时间考察点:递归。

2022-08-20 10:39:40 386

原创 EOJ.矩形的个数

提示:这道题原本可以使用死循环,遍历计算1存在的个数来做。但是有更巧妙的办法:空间来代替时间,定义一个二维数组的同时,将(1,1)到(i,j)所形成的矩形所有1的个数保存到S[i][j]中

2022-08-18 10:51:23 120

原创 面向对象程序设计(基于C++)笔记(Excetion Handling)

程序员会试图预防意外情况发生,C++异常就为处理这种情况提供了一种功能强大而灵活的工具。异常处理分为三部分:1、引发抛出异常2、捕获异常3、使用try块把业务代码和错误处理混合在一起,其实是一种不好的代码逻辑,维护性、可读性和性能都会下降好处:只用一个catch就可以捕捉派生类 两种实现差别:第一种用基类的对象去捕获派生类的对象,就可能会发生数据成员切片现象。如果我们抛出的对象的数据类型和catch的类型不一样时是不可以的,只有下面这种情况可行[1] if H is the same type as E.

2022-06-02 14:26:41 228

原创 EOJ.多米诺骨牌

单点时限: 1.0 sec内存限制: 512 MBCuberQQ 有若干 1×1,2×1, 4×1 的骨牌。他想要知道拼出一个 n×1 的图形有多少种不同的方案。输入一个整数 n,表示图形的长度。在一行输出一个整数,表示方案数。

2022-06-01 15:32:28 334

原创 EOJ.谁是第一名

单点时限: 2.0 sec内存限制: 512 MB为了知道哪些学生最优秀,考虑他们的三项主要课程(C Programming Language, Mathematics , English)成绩和平均成绩(平均成绩四舍五入取整),分别用C,M,E,A表示。写一个程序,对学生的四项成绩进行排序并输出每项成绩的第一名。程序的输入为学生的学号和三门课程成绩,不包含平均成绩。第 1 行:一个整数 T (1≤T≤10) 为问题数。对于每组测试数据:第 1 行:整数 n (1≤n≤100) ,表示学生的数量。第 2 行

2022-06-01 14:04:22 273

原创 EOJ.数位和

单点时限:2.0 sec内存限制:512 MB问题描述输入格式输出格式对于每个问题,输出一行问题的编号(0 开始编号,格式:case #0: 等),然后在一行中输出用r进制表示的十进制正整数n转换成r进制后的数位和。样例:input:2123456 10123456 2output:case #0:21case #1:110提示:当r进制大于10时,用大写字母A-F表示大于10的数字。例如:十...

2022-05-31 18:20:48 186

原创 EOJ.神奇的01字符串

问题分析:strcat、strcpy动态申请内存记得及时释放,否则容易re考察:字符串的处理代码解决部分:#include <stdio.h>#include <stdlib.h>#include<string.h>typedef long long int lli;char* anti(char* s,int cnt){ char *r=(char*) malloc(sizeof(char)*(cnt+1))...

2022-05-31 18:11:24 148

原创 面向对象程序设计(基于C++)笔记5.26

一个是类型参数,一个是非类型参数template<typename T, int i> class Buffer { T v[i]; int sz;public: Buffer():sz(i) { } …};Buffer<char,127> cbuf;Buffer<Record,8> rbuf;!!!模板参数必须是常量•Example: void f(int i) { ...

2022-05-26 14:26:05 155

原创 EOJ.字符串替换

单点时限:2.0 sec内存限制:512 MB问题描述输入一个只含有小写字母和数字的字符串,将其中的数字用数字前面的字母序列进行替换,字母序列连续出现次数等于该数字。输入格式输入一个只含数字和小写字母的字符串s(2≤|s|≤10000)。输入保证数字前面必有字母。连续数字个数不超过3个,没有前导零,不会都是零。输出格式输出替换后的字符串样例:input:a2bc3d1output:aabcbcbcd问题分析:这...

2022-05-23 21:02:17 249

原创 EOJ.【HTTP与HTTPS】

单点时限:2.0 sec内存限制:256 MB问题描述超文本传输协议 (HTTP) 是互联网上应用最为广泛的一种网络协议,所有的宽WW文件都在网络中明文传输。HTTPS是以安全为目标的HTTP通道,即,HTTP下加入SS L层对HTTP传输的文件进行加密。小明同学认为所有的HTTP链接都是不完美的,他想把所有的HTTP链接都挑选出来,进行排序整理,但是由于历史记录非常多,这对于小明同学来说是一个巨大的挑战。聪明的你能够帮助他一下吗?输入格式第1行:输入一个正整数n..

2022-05-23 19:40:40 347

原创 EOJ.分数加法

单点时限:2.0 sec内存限制:512 MB问题描述输入格式第一行一个整数n,表示有n(1≤≤100)个分数接下来n行每行一个分数,用 n/m来表示。为了简化问题,输入不存在负的分数。输出格式以的形式输出最后的结果,并且要求结果分数是最简的表示。n/m题目保证所有数据在范围。int样例:input:21/31/2output:5/6问题分析:自己学代码中遇到的问题:C语言传参中不支持引用,只能用引用...

2022-05-23 17:10:52 137

Lab09_2.cpp

Lab09_2.cpp

2022-11-23

空空如也

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

TA关注的人

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