2024CCF认证第一轮(CSP-J)真题三、完善程序题第一题判断平方数问题:给定一个正整数n,判断这个数是不是完全平方数,即存在一个正整数x使得x的平方等于n试补全程序#include#includeusingnamespacestd;boolisSquare(intnum){inti=(1);intbound=(2);for(;i>n;if(isSquare(n)){cout<
笔记:代码随想录算法训练营day57:99.岛屿数量 深搜、岛屿数量 广搜、100.岛屿的最大面积
jingjingjing1111
深度优先算法笔记
学习资料:代码随想录注:文中含大模型生成内容99.岛屿数量卡码网题目链接(ACM模式)先看深搜方法:找到未标标记过的说明找到一片陆地的或者一片陆地的一个角落,dfs搜索是寻找相连接的陆地其余部分并做好标记#include#includeusingnamespacestd;intdirection[4][2]={0,1,-1,0,0,-1,1,0};voiddfs(constvector>&B612
代码随想录算法训练营第三十五天(20250303) |01背包问题 二维,01背包问题 一维,416. 分割等和子集 -[补卡20250316]
ZXZ_13
算法
01背包问题二维链接遍历物品没有大小顺序要求重点是模拟,推导出递推公式#include#includeintmain(){intm,n;std::cin>>m>>n;std::vectorweight(m,0),value(m,0);for(inti{0};i>weight[i];}for(inti{0};i>value[i];}std::vector>dp(m,std::vector(n+1,0
洛谷每日1题-------Day25__P1424 小鱼的航程(改进版)
__雨夜星辰__
洛谷每日1题算法c++数据结构学习笔记
题目描述有一只小鱼,它平日每天游泳250公里,周末休息(实行双休日),假设从周x开始算起,过了n天以后,小鱼一共累计游泳了多少公里呢?输入格式输入两个正整数x,n,表示从周x算起,经过n天。输出格式输出一个整数,表示小鱼累计游泳了多少公里。输入输出样例输入#1复制310输出#1复制2000说明/提示数据保证,1≤x≤7,1≤n≤106。题解#includeusingnamespacestd;int
C++并发编程有什么最佳实践?
c++
在C++并发编程中,遵循最佳实践可以显著提升代码的效率、可维护性和可扩展性。以下是一些关键的最佳实践:使用线程池管理线程线程池可以预先创建一组线程,并在需要时将任务分配给这些线程。这种方式减少了创建和销毁线程的开销,提高了程序性能。例如:cpp复制autopool=std::make_shared(std::thread::hardware_concurrency());pool->push(st
bitset and valarray
heraldww
c++数学ARMandroid漂亮的UI界面完整的界面设计职场和发展程序人生
记录一个比较少用的容器C++std::bitsethttps://www.cnblogs.com/wangshaowei/p/10297877.htmlvalarrayvalarray面向数值计算的数组,在C++11中才支持支持很多数值数组操作,如求数组总和、最大数、最小数等。需要头文件valarray支持
C++23标准库模块
eamon100
Win32软件开发c++
一、C++23标准库引入了两个命名模块:std和std.compat:std导出C++标准库命名空间std中定义的声明和名称,例如std::vector。它还会导出C包装器标头的内容,例如和,提供类似std::printf()函数的内容。不会导出全局命名空间(如::printf())中定义的C函数。这可改善包含这样的C包装器标头的同时也会包含像stdio.h这样的C头文件的情况,因为这会引入C全局
MySQL 8.0 特性的高频面试题及核心知识点
dblens 数据库管理和开发工具
mysqlmysql数据库面试题
1.索引原理与MySQL8.0新特性答案:自适应哈希索引:MySQL8.0自动在频繁查询的索引上构建哈希索引,加速等值查询(如WHEREid=1)。全文索引优化:支持布尔模式(MATCH()AGAINST())和自然语言模式,且索引更新更高效。InnoDB页压缩:支持ZSTD压缩算法,减少存储空间和I/O开销。虚拟列索引:可对虚拟列(ComputedColumns)创建索引,减少存储冗余。2.事务
std::find, find_if, find_if_not,find_end,find_first_of,adjacent_find
大树青云
C++20C++adjacent_findfind_if_notfind_endfind_first_of
DefinedinheadertemplateInputItfind_first_of(InputItfirst,InputItlast,ForwardIts_first,ForwardIts_last);(1)(constexprsinceC++20)templateForwardIt1find_first_of(ExecutionPolicy&&policy,ForwardIt1first,F
C++20 的 `std::remove_cvref`:简化类型处理的利器
码事漫谈
C++20c++20
文章目录1.`std::remove_cvref`是什么?2.示例代码3.为什么需要`std::remove_cvref`?4.实现原理5.使用场景6.注意事项7.总结在C++20中,标准库引入了许多新特性,其中std::remove_cvref是一个非常实用的类型特征工具,它极大地简化了类型处理的复杂性。1.std::remove_cvref是什么?std::remove_cvref是一个模板结
ASSERT函数
weixin_34194359
php
assert宏的原型定义在中,其作用是假设它的条件返回错误,则终止程序运行,原型定义:#includevoidassert(intexpression);assert的作用是现计算表达式expression,假设其值为假(即为0),那么它先向stderr打印一条出错信息,然后通过调用abort来终止程序执行。http://www.chongtang.me/index.php/1419提高程序健壮性
一文读懂std::move()
SJTU 路子
c++
左值和右值左值和右值的根本区别在于是否允许取地址&运算符获得对应的内存地址变量可以取地址,所以左值;但是常量和临时对象等不可以取地址,所以是右值左值是表达式结束后依然存在的持久对象(代表一个在内存中占有确定位置的对象)右值是表达式结束时不在存在的临时对象(不在内存中占有确定位置的表达式)左值引用和右值引用左值引用的声明符号为&,右值引用的声明符号为&&右值引用是用来支持转移语义的右值引用,用以引用
C++:std::move() / std::forward()
我什么都没有3
C++c++开发语言
移动语义和完美转发是C++11中引入的两个重要技术。熟练的掌握移动语义与完美转发,有益于设计安全、高性能的程序。其头文件均为。移动语义:增强了程序对数据所有权的控制,通过std::move标准库函数实现。完美转发:为实现通用的模板函数奠定了基础。通过std::forward库函数实现。基础1:右值引用C++表达式有两个属性:类型和值类型。这里的“值类型”指的就是左值(lvalue)与右值(rval
std::forward与std::move详解
_DCG_
c++算法
在阅读代码时遇到了std::forward与std::move,对这两个方法含义及使用场景有点不太清楚,在此写文章进行记录加深印象。std::forward概念保持传递值的类别不变,顾名思义,即传入一个左值,那么经过forward传递后还是一个左值;传入一个右值,经过forward转换后还是一个右值。它保持了原始实参的值类别,而不是强制进行转换,如果原始实参是左值,它就会转发为左值;如果原始实参为
大话C++之:左右值引用和std::move
Kelvin7_Feng
c++
大话C++之:左右值引用和std::move什么是左值和右值什么是左值引用和右值引用std::move的应用场景在C++11引入右值引用后,一直对其使用缺乏深入理解,特别是结合std::move移动语义。恰逢最近工作里有相关优化代码使用到,可以趁机会重新学习,加深理解。什么是左值和右值从命名来理解,既然命名区分左右,左右值是相对于赋值号“=”来作锚点。左值(LValue):可以位于等号左边,有持久
C++并发与实战(2):trie.cpp实现
SoloRejudger
C++并发c++java开发语言
2.trie.cpp实现注意到trie.h给了我们三个接口autoGet(std::string_viewkey)const->constT*;templateautoPut(std::string_viewkey,Tvalue)const->Trie;autoRemove(std::string_viewkey)const->Trie;我们就要在trie.cpp下面实现这三个接口实现前的注意点由
std::move()
DDlsss
c++网络协议
std::move是C++中一个用于实现移动语义的标准库函数,它用于将一个左值转换为右值引用。本质上,它并不会移动任何数据,它只是告诉编译器将某个对象当作临时对象(右值)处理。左值:左值是指能够出现在赋值语句左边的对象。它有一个明确的内存地址,并且是可以在多次使用的对象。例如,变量、对象、数组元素等都是左值。例子:intx=5;//x是左值x=10;//可以在赋值操作的左边右值:右值是指临时对象或
std::move
maray
开发语言
以前也看过一些std::move的介绍文章,总结下来一句话:std::move没有任何代价。这个总结实在是坑人。今天突然悟了,实际应用中悟的。如果写一个相关的教程,完全不应该从std::move入手,而是应该从如何降低对象拷贝代价入手。structA{intm_a;intm_b;};如果要对A做拷贝,可以写成下面这样。对于这种情况,就算用了std::move,也没有什么用。Aa1;g_a2=a1;
C#的List和DIctionary实现原理(手搓泛型类以及增删查改等功能)
Yuze_Neko
c#list开发语言
这里写自定义目录标题ListDIctionaryListMyList类:这是一个泛型类,能够存储任意类型的元素。_items数组:用于实际存储元素。_size变量:记录当前列表中的元素数量。构造函数:初始化数组容量为4。Count属性:获取列表中的元素数量。索引器this[intindex]:用于访问列表中的元素。Add方法:向列表中添加元素,若数组容量不足,会调用EnsureCapacity方法
C++学习note8(结构体)
技术小白Byteman
c++学习开发语言算法visualstudio
一,结构体用法结构体为用户自定义的数据类型,放在主函数前,其定义方法如下:structStudent{stringname;intage;intgrade;};代码示例:#includeusingnamespacestd;#includestructStudent{/此处Student也可为student(不硬性要求大小写)stringname;intage;intgrade;}s3;/在此顺便创
C++学习note7(指针)
技术小白Byteman
c++学习开发语言windowsvisualstudio算法数据结构
一,指针的定义指针用于记录变量的地址。代码示例:#includeusingnamespacestd;intmain(){inta=0;int*p;(int*为一体)p=&a;p为a的地址coutusingnamespacestd;intmain(){int*p=NULL;*p=100;定义空指针后不可对其进行访问,故程序出错coutusingnamespacestd;intmain(){int*p
题目 3161: 蓝桥杯2023年第十四届省赛真题-子矩阵
Kent_J_Truman
算法蓝桥杯矩阵算法
题目代码#includeusingnamespacestd;typedeflonglongll;constintN=1010,mod=998244353;intg[N][N];intrmin[N][N],rmax[N][N];llmmin[N][N],mmax[N][N];intq[N*N];inthh,tt;intn,m,a,b;intmain(){cin>>n>>m>>a>>b;for(int
蓝桥杯2023年第十四届省赛真题-整数删除 暴力-->链表+小根堆
好好学习^按时吃饭
蓝桥杯链表
题目来自DOTCPP:思路:①每次找到数列中的最小值下标,然后用状态数组st标记它,相当与删除它,之后就不会访问它。②对最小值下标左边和右边判断一下,看有没有数字,如果有就把最小值加到两边第一个数字。暴力代码如下(会超时):#include#defineintlonglongusingnamespacestd;constintN=5e5+10;intn,k;intarr[N];boolst[N];
蓝桥杯2023年第十四届省赛真题-公因数匹配
好好学习^按时吃饭
蓝桥杯
题目来自DOPCPP:公因数:一个能同时整数若干整数的整数。暴力代码(超时):#include#defineintlonglongusingnamespacestd;constintN=1e5+10;intn;intarr[N];signedmain(){cin>>n;for(inti=1;i>arr[i];//s表示方案中的起点e表示终点//题目中说了i1){//更新答案cout#definei
Opencv计算机视觉编程攻略-第一节 图像读取与基本处理
weixin_44242403
深度学习opencv计算机视觉
1.图像读取导入依赖项的h文件#include#include#include#include项目Valuecore.hpp基础数据结构和操作(图像存储、矩阵运算、文件I/O)highgui.hpp图像显示、窗口管理、用户交互(图像/视频显示、用户输入处理、结果保存)imgproc.hpp图像处理算法(图像滤波、几何变换、边缘检测、形态学操作)二读取图片Matimage;//图像矩阵std::co
C++标准模板(STL)- 类型支持 (杂项变换,将 std::remove_cv 与 std::remove_reference 结合,std::remove_cvref)
繁星璀璨G
#杂项变换c++标准库模板运行时类型识别杂项变换remove_cvref
类型特性类型特性定义一个编译时基于模板的结构,以查询或修改类型的属性。试图特化定义于头文件的模板导致未定义行为,除了std::common_type可依照其所描述特化。定义于头文件的模板可以用不完整类型实例化,除非另外有指定,尽管通常禁止以不完整类型实例化标准库模板。杂项变换将std::remove_cv与std::remove_reference结合std::remove_cvreftempla
centos7输入python -m bitsandbytes报错CUDA Setup failed despite GPU being available. Please run the follo
小太阳,乐向上
python开发语言
在centos7.9系统中安装gpu驱动及cuda,跑大模型会报错,提示让输入python-mbitsandbytes依然报错:CUDASETUP:Loadingbinary/usr/local/python3/lib/python3.9/site-packages/bitsandbytes/libbitsandbytes_cuda117.so.../lib64/libstdc++.so.6:ve
uniapp接口请求封装api(超简单)
不法
uniappjavascript前端jsonuni-app
最下面有使用方法进阶点击查看进阶封装根目录创建api.jsconstcommoneUrl="http://192.168...";//公共路径//post请求封装functionpostRequest(url,data){varpromise=newPromise((resolve,reject)=>{varpostData=data;uni.request({url:commoneUrl+url
二分查找排序算法
周凡杨
java二分查找排序算法折半
一:概念 二分查找又称
折半查找(
折半搜索/
二分搜索),优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而 查找频繁的有序列表。首先,假设表中元素是按升序排列,将表中间位置记录的关键字与查找关键字比较,如果两者相等,则查找成功;否则利用中间位置记录将表 分成前、后两个子表,如果中间位置记录的关键字大于查找关键字,则进一步
java中的BigDecimal
bijian1013
javaBigDecimal
在项目开发过程中出现精度丢失问题,查资料用BigDecimal解决,并发现如下这篇BigDecimal的解决问题的思路和方法很值得学习,特转载。
原文地址:http://blog.csdn.net/ugg/article/de
Shell echo命令详解
daizj
echoshell
Shell echo命令
Shell 的 echo 指令与 PHP 的 echo 指令类似,都是用于字符串的输出。命令格式:
echo string
您可以使用echo实现更复杂的输出格式控制。 1.显示普通字符串:
echo "It is a test"
这里的双引号完全可以省略,以下命令与上面实例效果一致:
echo Itis a test 2.显示转义
Oracle DBA 简单操作
周凡杨
oracle dba sql
--执行次数多的SQL
select sql_text,executions from (
select sql_text,executions from v$sqlarea order by executions desc
) where rownum<81;
&nb
画图重绘
朱辉辉33
游戏
我第一次接触重绘是编写五子棋小游戏的时候,因为游戏里的棋盘是用线绘制的,而这些东西并不在系统自带的重绘里,所以在移动窗体时,棋盘并不会重绘出来。所以我们要重写系统的重绘方法。
在重写系统重绘方法时,我们要注意一定要调用父类的重绘方法,即加上super.paint(g),因为如果不调用父类的重绘方式,重写后会把父类的重绘覆盖掉,而父类的重绘方法是绘制画布,这样就导致我们
线程之初体验
西蜀石兰
线程
一直觉得多线程是学Java的一个分水岭,懂多线程才算入门。
之前看《编程思想》的多线程章节,看的云里雾里,知道线程类有哪几个方法,却依旧不知道线程到底是什么?书上都写线程是进程的模块,共享线程的资源,可是这跟多线程编程有毛线的关系,呜呜。。。
线程其实也是用户自定义的任务,不要过多的强调线程的属性,而忽略了线程最基本的属性。
你可以在线程类的run()方法中定义自己的任务,就跟正常的Ja
linux集群互相免登陆配置
林鹤霄
linux
配置ssh免登陆
1、生成秘钥和公钥 ssh-keygen -t rsa
2、提示让你输入,什么都不输,三次回车之后会在~下面的.ssh文件夹中多出两个文件id_rsa 和 id_rsa.pub
其中id_rsa为秘钥,id_rsa.pub为公钥,使用公钥加密的数据只有私钥才能对这些数据解密 c
mysql : Lock wait timeout exceeded; try restarting transaction
aigo
mysql
原文:http://www.cnblogs.com/freeliver54/archive/2010/09/30/1839042.html
原因是你使用的InnoDB 表类型的时候,
默认参数:innodb_lock_wait_timeout设置锁等待的时间是50s,
因为有的锁等待超过了这个时间,所以抱错.
你可以把这个时间加长,或者优化存储
Socket编程 基本的聊天实现。
alleni123
socket
public class Server
{
//用来存储所有连接上来的客户
private List<ServerThread> clients;
public static void main(String[] args)
{
Server s = new Server();
s.startServer(9988);
}
publi
多线程监听器事件模式(一个简单的例子)
百合不是茶
线程监听模式
多线程的事件监听器模式
监听器时间模式经常与多线程使用,在多线程中如何知道我的线程正在执行那什么内容,可以通过时间监听器模式得到
创建多线程的事件监听器模式 思路:
1, 创建线程并启动,在创建线程的位置设置一个标记
2,创建队
spring InitializingBean接口
bijian1013
javaspring
spring的事务的TransactionTemplate,其源码如下:
public class TransactionTemplate extends DefaultTransactionDefinition implements TransactionOperations, InitializingBean{
...
}
TransactionTemplate继承了DefaultT
Oracle中询表的权限被授予给了哪些用户
bijian1013
oracle数据库权限
Oracle查询表将权限赋给了哪些用户的SQL,以备查用。
select t.table_name as "表名",
t.grantee as "被授权的属组",
t.owner as "对象所在的属组"
【Struts2五】Struts2 参数传值
bit1129
struts2
Struts2中参数传值的3种情况
1.请求参数绑定到Action的实例字段上
2.Action将值传递到转发的视图上
3.Action将值传递到重定向的视图上
一、请求参数绑定到Action的实例字段上以及Action将值传递到转发的视图上
Struts可以自动将请求URL中的请求参数或者表单提交的参数绑定到Action定义的实例字段上,绑定的规则使用ognl表达式语言
【Kafka十四】关于auto.offset.reset[Q/A]
bit1129
kafka
I got serveral questions about auto.offset.reset. This configuration parameter governs how consumer read the message from Kafka when there is no initial offset in ZooKeeper or
nginx gzip压缩配置
ronin47
nginx gzip 压缩范例
nginx gzip压缩配置 更多
0
nginx
gzip
配置
随着nginx的发展,越来越多的网站使用nginx,因此nginx的优化变得越来越重要,今天我们来看看nginx的gzip压缩到底是怎么压缩的呢?
gzip(GNU-ZIP)是一种压缩技术。经过gzip压缩后页面大小可以变为原来的30%甚至更小,这样,用
java-13.输入一个单向链表,输出该链表中倒数第 k 个节点
bylijinnan
java
two cursors.
Make the first cursor go K steps first.
/*
* 第 13 题:题目:输入一个单向链表,输出该链表中倒数第 k 个节点
*/
public void displayKthItemsBackWard(ListNode head,int k){
ListNode p1=head,p2=head;
Spring源码学习-JdbcTemplate queryForObject
bylijinnan
javaspring
JdbcTemplate中有两个可能会混淆的queryForObject方法:
1.
Object queryForObject(String sql, Object[] args, Class requiredType)
2.
Object queryForObject(String sql, Object[] args, RowMapper rowMapper)
第1个方法是只查
[冰川时代]在冰川时代,我们需要什么样的技术?
comsci
技术
看美国那边的气候情况....我有个感觉...是不是要进入小冰期了?
那么在小冰期里面...我们的户外活动肯定会出现很多问题...在室内呆着的情况会非常多...怎么在室内呆着而不发闷...怎么用最低的电力保证室内的温度.....这都需要技术手段...
&nb
js 获取浏览器型号
cuityang
js浏览器
根据浏览器获取iphone和apk的下载地址
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" content="text/html"/>
<meta name=
C# socks5详解 转
dalan_123
socketC#
http://www.cnblogs.com/zhujiechang/archive/2008/10/21/1316308.html 这里主要讲的是用.NET实现基于Socket5下面的代理协议进行客户端的通讯,Socket4的实现是类似的,注意的事,这里不是讲用C#实现一个代理服务器,因为实现一个代理服务器需要实现很多协议,头大,而且现在市面上有很多现成的代理服务器用,性能又好,
运维 Centos问题汇总
dcj3sjt126com
云主机
一、sh 脚本不执行的原因
sh脚本不执行的原因 只有2个
1.权限不够
2.sh脚本里路径没写完整。
二、解决You have new mail in /var/spool/mail/root
修改/usr/share/logwatch/default.conf/logwatch.conf配置文件
MailTo =
MailFrom
三、查询连接数
Yii防注入攻击笔记
dcj3sjt126com
sqlWEB安全yii
网站表单有注入漏洞须对所有用户输入的内容进行个过滤和检查,可以使用正则表达式或者直接输入字符判断,大部分是只允许输入字母和数字的,其它字符度不允许;对于内容复杂表单的内容,应该对html和script的符号进行转义替换:尤其是<,>,',"",&这几个符号 这里有个转义对照表:
http://blog.csdn.net/xinzhu1990/articl
MongoDB简介[一]
eksliang
mongodbMongoDB简介
MongoDB简介
转载请出自出处:http://eksliang.iteye.com/blog/2173288 1.1易于使用
MongoDB是一个面向文档的数据库,而不是关系型数据库。与关系型数据库相比,面向文档的数据库不再有行的概念,取而代之的是更为灵活的“文档”模型。
另外,不
zookeeper windows 入门安装和测试
greemranqq
zookeeper安装分布式
一、序言
以下是我对zookeeper 的一些理解: zookeeper 作为一个服务注册信息存储的管理工具,好吧,这样说得很抽象,我们举个“栗子”。
栗子1号:
假设我是一家KTV的老板,我同时拥有5家KTV,我肯定得时刻监视
Spring之使用事务缘由(2-注解实现)
ihuning
spring
Spring事务注解实现
1. 依赖包:
1.1 spring包:
spring-beans-4.0.0.RELEASE.jar
spring-context-4.0.0.
iOS App Launch Option
啸笑天
option
iOS 程序启动时总会调用application:didFinishLaunchingWithOptions:,其中第二个参数launchOptions为NSDictionary类型的对象,里面存储有此程序启动的原因。
launchOptions中的可能键值见UIApplication Class Reference的Launch Options Keys节 。
1、若用户直接
jdk与jre的区别(_)
macroli
javajvmjdk
简单的说JDK是面向开发人员使用的SDK,它提供了Java的开发环境和运行环境。SDK是Software Development Kit 一般指软件开发包,可以包括函数库、编译程序等。
JDK就是Java Development Kit JRE是Java Runtime Enviroment是指Java的运行环境,是面向Java程序的使用者,而不是开发者。 如果安装了JDK,会发同你
Updates were rejected because the tip of your current branch is behind
qiaolevip
学习永无止境每天进步一点点众观千象git
$ git push joe prod-2295-1
To
[email protected]:joe.le/dr-frontend.git
! [rejected] prod-2295-1 -> prod-2295-1 (non-fast-forward)
error: failed to push some refs to '
[email protected]
[一起学Hive]之十四-Hive的元数据表结构详解
superlxw1234
hivehive元数据结构
关键字:Hive元数据、Hive元数据表结构
之前在 “[一起学Hive]之一–Hive概述,Hive是什么”中介绍过,Hive自己维护了一套元数据,用户通过HQL查询时候,Hive首先需要结合元数据,将HQL翻译成MapReduce去执行。
本文介绍一下Hive元数据中重要的一些表结构及用途,以Hive0.13为例。
文章最后面,会以一个示例来全面了解一下,
Spring 3.2.14,4.1.7,4.2.RC2发布
wiselyman
Spring 3
Spring 3.2.14、4.1.7及4.2.RC2于6月30日发布。
其中Spring 3.2.1是一个维护版本(维护周期到2016-12-31截止),后续会继续根据需求和bug发布维护版本。此时,Spring官方强烈建议升级Spring框架至4.1.7 或者将要发布的4.2 。
其中Spring 4.1.7主要包含这些更新内容。