上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 48 下一页
摘要: STL各种容器和算法的sort和find函数对重载运算符的调用情况: 1) 二叉树类型的容器的sort和find都会调用operator < 。 2)线性类型容器sort会调用operator <;线性容器使用std::find会调用operator ==。 需要非常注意重载<运算符,分类讨论要周全 阅读全文
posted @ 2021-06-11 16:53 PKICA 阅读(163) 评论(0) 推荐(0)
摘要: 例1:int f(){ int i = 1; return i;}int main{ int r = f();}在例1的程序中,由于f()函数返回的是int类型,在函数结束时,要返回的值已经用于初始化函数的调用点的临时量了(假设为temp,在main(调用者)中),函数执行完后,i确实是被销毁了,但 阅读全文
posted @ 2021-06-03 15:28 PKICA 阅读(328) 评论(0) 推荐(0)
摘要: C++标准的规定:非常量的引用不能指向临时对象 为了防止给常量或临时变量(只有瞬间的生命周期)赋值(易产生bug),只许使用const引用之。 概括一下: 不能把临时对象作为实参传给非const引用。 例如: void conv(string &str) { } int main() { conv( 阅读全文
posted @ 2021-06-02 09:46 PKICA 阅读(139) 评论(0) 推荐(0)
摘要: 【ST算法描述】 信息学竞赛中,经常会出现RMQ问题,即求区间最大(小)值问题。那么,我们该如何求解呢?ST算法横空出世。 ST算法(Sparse Table,稀疏表)主要用于解决区间最值问题(即RMQ问题)。因为ST算法求解RMQ问题时的时间复杂度只有O(nlogn),查询时间复杂度为常数阶O(1 阅读全文
posted @ 2021-05-17 20:13 PKICA 阅读(131) 评论(0) 推荐(0)
摘要: 本文转载自线段树详解 一、什么是线段树? 线段树是怎样的树形结构? 线段树是一种二叉搜索树,什么叫做二叉搜索树,首先满足二叉树,每个结点度小于等于二,即每个结点最多有两颗子树,何为搜索,我们要知道,线段树的每个结点都存储了一个区间,也可以理解成一个线段,而搜索,就是在这些线段上进行搜索操作得到你想要 阅读全文
posted @ 2021-05-17 19:49 PKICA 阅读(44) 评论(0) 推荐(0)
摘要: https://mp.weixin.qq.com/s/FcGGaUesD0kEpkADPdr1Fg 先来看几个问题吧。 1.什么是树状数组? 顾名思义,就是用数组来模拟树形结构呗。那么衍生出一个问题,为什么不直接建树?答案是没必要,因为树状数组能处理的问题就没必要建树。和Trie树的构造方式有类似之 阅读全文
posted @ 2021-05-11 19:38 PKICA 阅读(23) 评论(0) 推荐(0)
摘要: 在平常的工作中大家喜欢使用vscode编码,而又使用默认的非utf-8编码方式。那么,在linux环境上,打开读取含有汉字的文件,那么显示的内容就非常奇特了,怎么也看不懂。这样的情况怎么办呢,如果成百上千的文件都是这样呢。这里提供一个小工具,转换某种编码到UTF-8格式,解决跨平台环境下,字符编码不 阅读全文
posted @ 2021-05-06 15:15 PKICA 阅读(1286) 评论(0) 推荐(0)
摘要: C++20加入协程,其实是为了以后加入网络库而准备的。协程也是异步执行的,那么它跟std::thread有什么区别呢?区别在于协程是用户调度的,线程则是系统调度的。由于是用户态的,所以协程数量是不受限制的,想要多少就创建多少。同时C++20的协程是无栈协程,在调度切换时性能比线程快很多。基于协程的特 阅读全文
posted @ 2021-04-20 20:29 PKICA 阅读(129) 评论(0) 推荐(0)
摘要: 优点没有头文件声明实现仍然可分离, 但非必要可以显式指定那些导出(类, 函数等)不需要头文件重复引入宏 (include guards)模块之间名称可以相同不会冲突模块只处理一次, 编译更快 (头文件每次引入都需要处理)预处理宏只在模块内有效模块引入顺序无关紧要 创建模块// cppcon.cpp 阅读全文
posted @ 2021-04-20 20:26 PKICA 阅读(1338) 评论(0) 推荐(0)
摘要: 内存模型是一个硬件上的概念,表示机器指令是以什么样的顺序被处理器执行的 如何保证指令执行顺序 保证执行顺序会牺牲一些执行效率,因为这意味着放弃了编译器、处理器等的优化处理。 强顺序的内存模型指: 代码顺序和寄存器实际执行的顺序一致 弱顺序的内存模型指: 寄存器实际执行的顺序与代码顺序不一致,被处理器 阅读全文
posted @ 2020-09-25 20:11 PKICA 阅读(23) 评论(1) 推荐(0)
上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 48 下一页