![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
LTELTY
一句话说完所有事
展开
-
C++ 右值引用
右值引用1、右值引用引入的背景临时对象的产生和拷贝所带来的效率折损,一直是C++所为人诟病的问题。但是C++标准允许编译器对于临时对象的产生具有完全的自由度,从而发展出了Copy Elision、RVO(包括NRVO)等编译器优化技术,它们可以防止某些情况下临时对象产生和拷贝。下面简单地介绍一下Copy Elision、RVO,对此不感兴趣的可以直接跳过:(转载 2016-05-25 12:07:32 · 318 阅读 · 0 评论 -
KMP算法解读
KMP算法全称Knuth-Morris-Pratt算法,根据三个作者Donald Knuth、Vaughan Pratt、James H. Morris的姓氏的首字母拼接而成的。是一种字符串匹配的算法,用于在一个文本串S中查找模式串P的位置。暴力法举例在讲解KMP算法之前,我们先来看暴力破解法是如何运作的,假如我们有一个文本串S和一个模式串P如下:文本串: BBC_ABCDAB_ABCDA...原创 2019-04-07 20:07:13 · 240 阅读 · 0 评论 -
基数排序、桶排序和计数排序的区别
1.桶排序(Bucket Sort)基本思路是:将待排序元素划分到不同的痛。先扫描一遍序列求出最大值 maxV 和最小值 minV ,设桶的个数为 k ,则把区间 [minV, maxV] 均匀划分成 k 个区间,每个区间就是一个桶。将序列中的元素分配到各自的桶。对每个桶内的元素进行排序。可以选择任意一种排序算法。 将各个桶中的元素合并成一个大的有序序列。假设数据是均匀分布的,则每个桶...原创 2019-04-18 00:11:08 · 15225 阅读 · 0 评论 -
链表的快排、归并排序
引言面试被问到了如何对链表进行排序, 快排不敢写,写了个很低效的插入排序。现在整理一下。解法1、链表的归并排序Node* listMergeSort(Node* head)// n list里面节点的个数{ // if (head->next == NULL) //一个元素就返回 if (head->next == NULL) return head; Nod...原创 2019-04-25 18:00:54 · 214 阅读 · 0 评论 -
算法题--源字符串插入最少字符生成回文串
回文字符串时间限制:3000 ms | 内存限制:65535 KB难度:4描述所谓回文字符串,就是一个字符串,从左到右读和从右到左读是完全一样的,比如"aba"。当然,我们给你的问题不会再简单到判断一个字符串是不是回文字符串。现在要求你,给你一个字符串,可在任意位置添加字符,最少再添加几个字符,可以使这个字符串成为回文字符串。输入第一行给出整数N(0<...原创 2016-07-07 14:06:58 · 4847 阅读 · 4 评论 -
218. The Skyline Problem
A city’s skyline is the outer contour of the silhouette formed by all the buildings in that city when viewed from a distance. Now suppose you are given the locations and height of all the buildings as...原创 2019-05-06 18:39:13 · 276 阅读 · 0 评论