草庐IT

c++入门

全部标签

图数据库neo4j入门:linux下社区版安装与配置

一、知识图谱和图数据库简介知识图谱一种基于图的数据结构,由节点(Point)和边(Edge)组成。其中节点即实体,由一个全局唯一的ID标示,关系(也称属性))用于连接两个节点。通俗地讲,知识图谱就是把所有不同种类的信息(HeterogeneousInformation)连接在一起而得到的一个关系网络。知识图谱提供了从“关系”的角度去分析问题的能力。neo4jneo4j是目前比较主流的图数据库,存储,查询图谱数据非常高效,由顶点-边组成,常用于微博好友关系分析、城市规划、社交、推荐等应用。具体的应用场景介绍,推荐:通过图数据库,查询某节点的消费情况、好友信息可为其推荐关联度高的好友或可能消费的商

opencv入门到精通——图片,视频,摄像头的读取与保存

 简介OpenCV是一个流行的开源计算机视觉库,由英特尔公司发起发展。它提供了超过2500个优化算法和许多工具包,可用于灰度、彩色、深度、基于特征和运动跟踪等的图像处理和计算机视觉应用。OpenCV主要使用C++语言编写,同时也支持Python、Java、C等语言。由于其开源和广泛使用的特点,在计算机视觉和机器学习领域得到了广泛的应用。1.计算机眼中的图像RGB图像是一种由红色(R)、绿色(G)和蓝色(B)三个颜色通道组成的彩色图像。每个像素点都有三个数值,分别代表其在红色、绿色和蓝色通道中的亮度。每个数的取值为(0-255),三个不同的值组合就形成一个像素点。这三个通道共同组成了RGB图像,

[C++] C++入门

☃️个人主页:fighting小泽🌸作者简介:目前正在学习C++和Linux🌼博客专栏:C++入门🏵️欢迎关注:评论👊🏻点赞👍🏻留言💪🏻文章目录0.本节知识点安排目的1.C++关键字(C++98)2.命名空间2.1命名空间的定义2.3命名空间的使用3.C++输入&输出4.缺省参数4.1缺省参数概念5.函数重载5.1函数重载概念6.引用6.1引用概念6.2引用特性6.3常引用6.4使用场景6.5传值、传引用效率比较6.6引用和指针的区别7.内联函数7.1概念7.2特性8.auto关键字(C++11)9.范围for10.关键字nullptr0.本节知识点安排目的C++是在C的基础之上,容纳进去了面

面向萌新的数学建模入门指南

时间飞逝,我的大一建模生涯也告一段落。感谢建模路上帮助过我的学长和学姐们,滴水之恩当涌泉相报,写下这篇感想,希望可以给学弟学妹们一丝启发,也就完成我的想法了。拙劣的文笔,也不知道写些啥,按顺序随便写写吧。2023年9月数学建模国赛数学建模是利用数学方法解决实际问题的一种实践。即通过抽象、简化、假设、引进变量等处理过程后,将实际问题用数学方式表达,建立起数学模型,然后运用先进的数学方法以及计算机技术进行求解。简而言之,建立数学模型的这个过程就称为数学建模。主要考察同学们的想象能力、简化能力、联想能力、创造能力、判断能力、综合能力、查阅能力、编程能力、写作能力、团结协作能力……1.请为我预测一下明

seo入门基础知识

推广seo是什么意思怎么做seo,是搜索引擎优化的意思,是在遵循搜索引擎规律的情况下,结合网站进行优化,关键词的布局,内容的相关性做链接,同时需要做好内容与外链,提升网站的用户体验,使得网站在搜索引擎中有个不错的排名,提升提升网站的阅读量。那么企业进行SEO优化的目的是什么呢?其实就是一句话,推广品牌,获得流量,达成转化。具体来说就是,人们在搜索某个词时,网站在搜索结果中拥有良好的排名,普通用户认为,这些良好排名的网站就是相对可靠的品牌。SEO是什么意思SEO是英文SearchEngineOptimization的缩写,中文翻译过来就是“搜索引擎优化”,拿外行的人话来说就是:通过总结搜索引擎的

x86平台SIMD编程入门(1):SIMD基础知识

1、简介SIMD(SingleInstruction,MultipleData)是一种并行计算技术,它通过向量寄存器存储多个数据元素,并使用单条指令同时对这些数据元素进行处理,从而提高了计算效率。SIMD已被广泛应用于需要大量数据并行计算的领域,包括图像处理、视频编码、信号处理、科学计算等。许多现代处理器都提供了SIMD指令集扩展,例如x86平台的SSE/AVX,以及ARM平台的NEON,本文只讨论x86平台下的SIMD指令。在C++程序中使用SIMD指令有两种方案,一种是使用内联汇编,另一种是使用intrinsic函数。以简单的数组相乘为例,代码的常规写法、内联汇编写法以及intrinsic

x86平台SIMD编程入门(2):通用指令

1、重解释转换虽然128位的XMM寄存器在硬件上只是256位YMM寄存器的下半部分,但在C++中它们是不同的类型。有一些intrinsic函数可以将它们重新解释为不同的类型,如下表所示,行代表源类型,列代表目标类型。__m128__m128d__m128i__m256__m256d__m256d__m128=_mm_castps_pd_mm_castps_si128_mm256_castps128_ps256__m128d_mm_castpd_ps=_mm_castpd_si128_mm256_castpd128_pd256__m128i_mm_castsi128_ps_mm_castsi12

x86平台SIMD编程入门(3):浮点指令

1、算术指令算术类型函数示例备注加_mm_add_sd、_mm256_add_ps减_mm_sub_sd、_mm256_sub_ps乘_mm_mul_sd、_mm256_mul_ps除_mm_div_sd、_mm256_div_ps平方根_mm_sqrt_sd、_mm256_sqrt_ps倒数_mm_rcp_ss、_mm_rcp_ps、_mm256_rcp_ps快速计算32位浮点数的近似倒数(1/x),最大相对误差小于\(1.5\times2^{-12}\)。倒数平方根_mm_rsqrt_ss、_mm_rsqrt_ps、_mm256_rsqrt_ps快速计算32位浮点数的近似倒数平方根(1/s

x86平台SIMD编程入门(4):整型指令

1、算术指令算术类型函数示例加_mm_add_epi32、_mm256_sub_epi16减_mm_sub_epi32、_mm256_sub_epi16乘_mm_mul_epi32、_mm_mullo_epi32除无水平加/减_mm_hadd_epi16、_mm256_hsub_epi32饱和加/减_mm_adds_epi8、_mm256_subs_epi16最大/最小值_mm_max_epu8、_mm256_min_epi32绝对值_mm_abs_epi16、_mm256_abs_epi32平均值_mm_avg_epu16、_mm256_avg_epu8没有整数除法的SIMD指令。如果要将所

x86平台SIMD编程入门(5):提示与技巧

1、提示与技巧访问内存的成本非常高,一次缓存未命中可能会耗费100~300个周期。L3缓存加载需要40~50个周期,L2缓存大约需要10个周期,即使L1缓存的访问速度也明显慢于寄存器。所以要尽量保持数据结构对SIMD友好,优先选择std::vector、CAtlArray、eastl::vector等容器,按照顺序读取数据以提高缓存命中率。如果数据比较稀疏,可以将其组织为小型密集块的稀疏集合,其中每个块的大小至少为1个SIMD寄存器的大小。如果需要遍历链表或图,同时对每个节点进行计算,可以使用_mm_prefetch函数来将数据预先加载到缓存中。为了获取最佳性能,内存访问需要内存对齐。更具体地