cpp
zhusf16
这个作者很懒,什么都没留下…
展开
-
c++ unordered_map 判断某个键是否存在
unordered_map c++ reference 是c++ 哈希表的实现模板,在头文件<unordered_map>中,存储key-value的组合,unordered_map可以在常数时间内,根据key来取到value值。如何判断unordered_map 判断某个键是否存在呢?find函数。iterator find ( const key_type& key );如...原创 2018-04-03 09:21:49 · 101826 阅读 · 4 评论 -
全排列 递归方法C++
全排列给定组数字或者一个字符串,长度为n,打印出其全排列,例如:abc的全排列有:abc, acb, bac, bca, cab, cba六种。可以用递归的方法求解,即先固定第一个元素,然后求出后n-1个元素的全排列。当然第一个元素可能是任字符串中的任一个字符。C++代码如下:#include <iostream>#include <string>u...原创 2018-08-05 11:30:45 · 11231 阅读 · 0 评论 -
const关键字与指针
const是C/C++中定义常量的关键字,有利提高代码的鲁棒性和可读性。const经常与指针一起使用,有指针指向的内容为常量和指针本身为常量两种,容易引起混淆。指针指向的内容不变#include <iostream>using namespace std;int main() { int a[] = {1, 2, 3, 4}; const int*...原创 2018-07-30 22:42:18 · 249 阅读 · 0 评论 -
C++字符串string与整型int的相互转换
C++中没有直接的函数可以进行字符串和整型的相互转换。可以手动编写程序进行转化,但要考虑负数,前面有空格,和整数不能以0开头等情况,较为复杂。利用stringstream进行字符串和整型的相互转化,stringstream的头文件为sstream。下列函数可以方便地实现C++中的字符串与整型的相互转化。string int2str(int n) { stringstream s...原创 2018-07-18 14:28:26 · 3657 阅读 · 0 评论 -
c++ make_heap(), pop_heap()函数
c++中的make_heap(), pop_heap()的头文件为algorithm。作用与priority_queue中的成员函数相同,可以单独使用。使用方法make_heap 在容器范围内,就地建堆,保证最大值在所给范围的最前面,其他值的位置不确定pop_heap 将堆顶(所给范围的最前面)元素移动到所给范围的最后,并且将新的最大值置于所给范围的最前面push_heap...原创 2018-07-04 14:53:02 · 20393 阅读 · 1 评论 -
如何判断整数是否是2、3、4的乘方(幂)
在LeetCode 342. Power of Four和LeeCode 326. Power of Three中有关于如何判断整数是否是4或者是3的乘方问题,并且不用循环和递归。如果使用循环或者递归可以很容易地通过不断地除以基数进行判断,如果要求不能使用循环或者递归,那该问题就有难度了。乘方数的重要性质:已知整数MMM是整数nnn的乘方即M=niM=niM=n^{i},若将MMM表示为n...原创 2018-06-26 14:03:10 · 812 阅读 · 0 评论 -
0x55555555,0xaaaaaaaa...等究竟是什么?
在刷到LeetCode 190. reverse bits中,抱着学习的态度对Discuss的大牛代码进行学习,发现了使用很巧妙的位操作的答案,其代码如下,该代码为LeetCode 190 Discuss高赞代码,非原创。 uint32_t reverseBits(uint32_t n) { n = (n >> 16) | (n << 16); ...原创 2018-06-08 15:13:08 · 13859 阅读 · 1 评论 -
C/C++整型上下限INT_MAX INT_MIN及其运算
C中常量INT_MAX和INT_MIN分别表示最大、最小整数,定义在头文件limits.h中。1. INT_MAX,INT_MIN数值大小因为int占4字节32位,根据二进制编码的规则,INT_MAX = 2^31-1,INT_MIN= -2^31.C/C++中,所有超过该限值的数,都会出现溢出,出现warning,但是并不会出现error。如果想表示的整数超过了该限值,可以使用长整型long l...原创 2018-05-12 13:31:19 · 115403 阅读 · 0 评论 -
c++容器 set 自定义排序
set c++ reference是c++中的一种容器,set可以用二叉树搜索树实现,set有两个特点:1. set中的元素不允许重复;2. set内部会维护一个严格的弱排序关系。上述两个特点实际上都依赖set的compare函数,compare函数判断两个元素相等就是相等,与元素本身没有直接的关系。默认定义了compare函数利用set内部默认的compare函数,可以将整数从小到大排序,将字符...原创 2018-04-03 16:31:49 · 26380 阅读 · 3 评论 -
虚函数与纯虚函数
1 虚函数C++中的虚函数是实现运行多态的重要工具。关键字为virtual。下面程序中定义了基类Base和派生类Deriv,派生类中有与基类中的同名函数print().如果定义一个基类指针,但是将其指向派生类对象。那么将指针的类型,调用基类中的print()函数。#include &amp;lt;iostream&amp;gt;using namespace std;class Base {publ...原创 2018-09-29 13:22:42 · 192 阅读 · 0 评论