英语er小作文
邀请信①On behalf of (身份)the Student Union,I am writing to cordially invite you to (活动)an academic lecture.
②The event is scheduled for (日期)March 4th,at (时间)2:00PM in (地点)the Student Activity Center.
The primary theme will revolve around (主题)”The Future of the Artificial Intelligence”
We believe it will offer valuable insights into (领域)this rapid evolving field.
③Given your excellent reputation and expertise(popularity),your presence will not only greatly honor us
but also immensely ...
算法笔记
vector操作vector的修改需要预先分配内存
//例1
int main()
{
vector<int> num(10);//预先分配内存
num[0] = 1;
num[1] = 2;
return 0;
}
//例2
int main()
{
vector<int> num(10);
vector<int>num_1(num);//用num初始化构造num_1
num_1[0] = 1;
num_1[1] = 2;
return 0;
}
//例3
int main()
{
int test[] = { 1,2,3,4,5 };
vector<int> num(test, test + 2);// ...
【C++】 详解 lower_bound 和 upper_bound 函数
【C++】 详解 lower_bound 和 upper_bound 函数
Excerpt文章浏览阅读8.5w次,点赞303次,收藏730次。本文详细介绍了C++中的lower_bound和upper_bound函数,这两个函数用于在有序数组中查找第一个大于等于或大于特定值的元素位置。作者通过实例和底层实现解析了它们的工作原理,并分享了常考面试题的解决方案。
目录
一、前言
二、函数详解
🥝 lower_bound
⚡无自定义比较函数
⚡使用自定义比较函数
✨ 自己写–自定义比较函数
✨ 官方的–自定义比较函数
🍍upper_bound
⚡无自定义比较函数
⚡使用自定义比较函数
✨ 自己写–自定义比较函数
✨ 官方的–自定义比较函数
🍇 upper_bound 和 lower_bound 的区别
三、常考面试题
四、共勉
一、前言
这两个函数是我在 LeetCode 上做题见到,看到不熟悉的函数 lower_bound 和 upper_bound让我感觉很难受,于是在 C++ 官网去学习,例子就一个是最基础的,我看明白了。虽然是两个函数的接口就两个,但 ...
c++-cin/cin.get/cin.getline()详解
c++之cin/cin.get/cin.getline()详解
ExcerptC++输入过程中,是把输入加载到缓冲区中,然后对缓冲区中的字符进行读取。cin,cin,get(),cin.getline()三个函数虽然都能进行数据读取,但是它们对缓冲区内数据的处理方法是不同的(如遇到[space],[enter]的处理方法)。本文将简单介绍cin,cin.get(),cin.g
C++输入过程中,是把输入加载到缓冲区中,然后对缓冲区中的字符进行读取。cin,cin,get(),cin.getline()三个函数虽然都能进行数据读取,但是它们对缓冲区内数据的处理方法是不同的(如遇到[space],[enter]的处理方法)。本文将简单介绍cin,cin.get(),cin.getline()的基本用法,从根本上解释它们对缓冲区数据的处理方法。
1.cin的基本用法
结束条件:[enter],[space],[tab]
处理方法:cin遇到缓冲区中的[enter],[space],[tab]会结束当前输入,并舍弃[enter],[space],[tab],继续下一项输入 ...
七牛云配置图床
背景在做md时,经常需要使用图片,但是文件一多,不仅管理不方便,分享给别人时图片也是一个问题,所以想设置一个图床来存储图片。
这里使用的是七牛云,因为有免费的10G空间
步骤进入七牛云登陆后,在左上角选择申请空间
创建完成后,进入概览进行配置
新创建的空间会分配一个为期30天的测试域名,若域名过期则不可以访问这个空间
所以最好自己定义一个域名
加速域名可以使用一级域名(如lqqq.ren),也可以使用二级域名(如pic.lqqq.ren)
使用场景选择图片小文件
其余默认
在创建的时候,如果是第一次创建,可能需要验证域名所有权
前往你的域名解析服务商,如腾讯云
添加成功后,在七牛云选择验证即可
创建成功后,配置CNAME
CNAME 简介 CNAME 即指别名记录,也被称为规范名字。一般用来把域名解析到别的域名上,当需要将域名指向另一个域名,再由另一个域名提供 ip 地址,就需要添加 CNAME 记录。
为什么使用CDN需要CNAME记录?
在七牛云开发者平台创建加速域名后,会给域名分配一个 “CNAME域名”(例:cdn-example-com.qiniu ...
注解RabbitListener与RabbitHandler及消息序列化MessageConvert
@RabbitListener与@RabbitHandler及消息序列化MessageConvert
涉及网络传输的应用序列化不可避免,发送端以某种规则将消息转成 byte 数组进行发送,接收端则以约定的规则进行 byte[] 数组的解析
RabbitMQ 的序列化是指 Message 的 body 属性,即我们真正需要传输的内容,RabbitMQ 抽象出一个 MessageConvert 接口处理消息的序列化,其实现有 SimpleMessageConverter(默认)、Jackson2JsonMessageConverter 等
当调用了 convertAndSend 方法时会使用 MessageConvert 进行消息的序列化
SimpleMessageConverter 对于要发送的消息体 body 为 byte[] 时不进行处理,如果是 String 则转成字节数组,如果是 Java 对象,则使用 jdk 序列化将消息转成字节数组,转出来的结果较大,含class类名,类相应方法等信息。因此性能较差
当使用 RabbitMQ 作为中间件时,数据量比较大, ...
跨域问题
问题描述前端调用后端提供的 API 来获取数据,很多都是前后端分离的架构
前端调用的后端接口不属于同一个域(域名或端口不同),就会产生跨域问题,也就是说你的应用访问了该应用域名或端口之外的域名或端口。
跨域是指跨域名的访问,以下情况都属于跨域:
跨域原因说明
示例
域名不同
www.jd.com 与 www.taobao.com
域名相同,端口不同
www.jd.com:8080 与 www.jd.com:8081
二级域名不同
item.jd.com 与 miaosha.jd.com
为什么有跨域问题?跨域不一定会有跨域问题。因为跨域问题是浏览器对于ajax请求的一种安全限制:一个页面发起的ajax请求,只能是于当前页同域名的路径,这能有效的阻止跨站攻击。
因此:跨域问题 是针对ajax的一种限制,也是浏览防止攻击的一种方式。
但是这却给我们的开发带来了不变,而且在实际生成环境中,肯定会有很多台服务器之间交互,地址和端口都可能不同,怎么办
后端的解决办法细粒度的解决/*
origins: 允许可访问的域列表
maxAge:准备响应前的缓存持续的最大时间(以秒为 ...
琴谱
请回答1988中括号高音,小括号低音
1213334555567【1】7653(5)532123456521213334555567【1】7653(5)53212345655
345 【21】777【1】7656【1】65321 1 3312112 35535
345 【21】777【1】7656【1】65321 1 3312112 35535
JAVAEE笔记
get里面只可以获取URL中的参数
post可以获取URL和body中的参数
requestresponse设置响应数据响应数据分为3个部分
1、响应行:HTTP/1.1 200 OK
void setStatus(int sc):设置响应状态码
2、响应头:Content-Type:text/html
void setHeader(String name,String value):设置响应头键值对
3、响应体:如图片,html信息等
PrintWriter getWriter():获取字符输出流
ServletOutputStream getOutputStream():获取字节输出流
完成重定向特点
浏览器地址变化
可以重定向到任意位置的资源(外部内部都可)
是两次请求,不能在多个资源之间使用Request共享数据
// //1. 设置状态码
// response.setStatus(302);
// //2.设置响应头
...
Ajax笔记
之前都是使用jsp来获取后端Servlet传输到前端的数据,但是jsp的缺点有很多,现在一般都不用jsp
概念AJAX即“Asynchronous JavaScript and XML”(异步的JavaScript与XML技术),指的是一套综合了多项技术的浏览器端网页开发技术。
作用:
与服务器进行数据交换:通过AJAX可以给服务器发送请求,并获取服务器的响应数据(使用AJAX+HTML就可以替换JSP页面了)
异步交互:可以不重新加载整个页面的情况下,与服务器交换数据并更新部分的网页。像用户名校验、搜索联想等
快速入门
编写一个Servlet,用response输出字符串
//1`获取请求参数
String username = request.getParameter("username");
boolean flag=false;
//2`判断是否存在,这里简化
if("zs".equals(username)){
flag=true;
}
//3`输 ...
JSP笔记
PS:还是Ajax+Servlet+html好用
概念Java Server Pages,Java的服务端页面
这是一种动态的网页技术,既可以定义html、css等静态的内容,也可以使用Java代码的动态内容
简单来说,jsp=java+html
作用:
简化开发,避免了在Servlet中直接输出html内容
快速入门
导入坐标
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
<scope>provided</scope>
</dependency>
创建jsp文件
编写代码
原理JSP本质上是一个Servlet
浏览器访问jsp页面—>tomcat会将name.jsp转换为name_jsp.java的Servlet文件—>tomcat再将文件转换到name_jsp.class文件
最后执行class字节码文件,提供 ...
Mybatis快速入门
概述 MyBatis 是支持普通 SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。MyBatis 使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Ordinary Java Objects,普通的 Java对象)映射成数据库中的记录。
相关介绍
持久层 javaEE的三层架构:表现层、业务层、持久层负责将数据保存到数据库的那一层代码
Mybatis的简化硬编码->配置文件
注册驱动,获取连接mybatis-config.xml核心配置文件Class.forName("com.mysql.jdbc.Driver");
String url="jdbc:mysql:///mybatis?useSSL=false";
String user="root";
String password="123456";
Connection ...










