自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 C++11 unordered map

C++:unordered map底层是hash表,map底层是红黑树Java:HashMapunordered map用法:(Leetcode#1)class Solution {public:    vector<int> twoSum(vector<int>& nums, int target) {        int i=0;int j=0;       ...

2018-05-07 23:24:00 226

原创 对哈希表的理解

哈希表(散列表)哈希函数:key与value地址的映射关系                value地址 = Hash(key)value地址对数组长度取余,可以得到连续的index其结构可如图所示:查找、插入、删除的时间复杂度为O(1)...

2018-05-07 23:17:58 271

原创 Leetcode#1 Two Sum

Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would have exactly one solution, and you may not use the same el...

2018-05-07 20:32:26 103

转载 C++ vector list

1.vector数据结构vector和数组类似,拥有一段连续的内存空间,并且起始地址不变。因此能高效的进行随机存取,时间复杂度为o(1);但因为内存空间是连续的,所以在进行插入和删除操作时,会造成内存块的拷贝,时间复杂度为o(n)。另外,当数组中内存空间不够时,会重新申请一块内存空间并进行内存拷贝。2.list数据结构list是由双向链表实现的,因此内存空间是不连续的。只能通过指针访问数据,所以l...

2018-04-27 16:59:53 673

转载 C++sizeof

说明:以下代码在VS2008中通过,在32位操作系统下。1.      定义sizeof是一个操作符(operator)。其作用是返回一个对象或类型所占的内存字节数。其返回值类型为size_t。(size_t在头文件stddef.h中定义,它依赖于编译系统的值,一般定义为 typedef unsigned int size_t;)2.      语法sizeof有三种语法形式:1)  sizeof...

2018-04-16 10:30:14 224

转载 进程与线程

转自:http://blog.csdn.net/luoweifu/article/details/46595285 什么是线程什么是线程?线程与进程与有什么关系?这是一个非常抽象的问题,也是一个特别广的话题,涉及到非常多的知识。我不能确保能把它讲的话,也不能确保讲的内容全部都正确。即使这样,我也希望尽可能地把他讲通俗一点,讲的明白一点,因为这是个一直困扰我很久的,扑朔迷离的知识领域,希望通过我的理...

2018-03-23 15:04:04 84

转载 C++new delete

转自:https://blog.csdn.net/codedoctor/article/details/76187567转自:https://blog.csdn.net/xxpresent/article/details/53024555在C++中,我们应该经常会用到new、delete,它们是C++的一个关键字,同时也是一个操作符,下面我将我对这两者的了解和学习做一个总结和探讨。一、new和de...

2018-03-23 14:50:41 2444

转载 C++指针数组

int *p[4]; //定义一个指针数组,该数组中每个元素是一个指针,每个指针指向哪里就需要程序中后续再定义了。int (*p)[4]; //定义一个数组指针,该指针指向含4个元素的一维数组(数组中每个元素是int型)。区分int *p[n]; 和int (*p)[n]; 就要看运算符的优先级了。int *p[n]; 中,运算符[ ]优先级高,先与p结合成为一个数组,再由int*说明这是一个整型...

2018-03-21 20:56:55 878

转载 C++析构函数

转自:http://blog.csdn.net/github_35160620/article/details/52602332设计一个类时,如何写析构函数? 析构函数如果我们不写的话,C++ 会帮我们自动的合成一个,就是说:C++ 会自动的帮我们写一个析构函数。很多时候,自动生成的析构函数可以很好的工作,但是一些重要的事迹,就必须我们自己去写析构函数。 析构函数和构造函数是一对。构造函数用于创建...

2018-03-21 17:48:32 1635

转载 C++值传递、指针传递、引用传递

值传递:形参是实参的拷贝,改变形参的值并不会影响外部实参的值。从被调用函数的角度来说,值传递是单向的(实参->形参),参数的值只能传入,不能传出。当函数内部需要修改参数,并且不希望这个改变影响调用者时,采用值传递。指针传递:形参为指向实参地址的指针,当对形参的指向操作时,就相当于对实参本身进行的操作引用传递:形参相当于是实参的“别名”,对形参的操作其实就是对实参的操作,在引用传递过程中,被调...

2018-03-21 17:42:07 132

转载 C++前缀与后缀运算符

前自增运算符改变了对象的状态并返回对象改变后的状态,不需要创建临时对象。下面是前自增运算符的例子:C++12345MyOwnClass& operator++(){  ++meOwnField;  return (*this);}后自增运算符也改变了对象的状态但是返回的是对象改变前的状态,并且需要创建一个临时对象。下面是后自增运算符重载的例子:C++123456MyOwnClass ope...

2018-03-21 16:43:07 2315

转载 c++拷贝构造函数详解

一、什么是拷贝构造函数      首先对于普通类型的对象来说,它们之间的复制是很简单的,例如:int a=100;int b=a;   而类对象与普通对象不同,类对象内部结构一般较为复杂,存在各种成员变量。  下面看一个类对象拷贝的简单例子。   #include<iostream>using namespace std;class CExample{private: ...

2018-03-21 16:03:26 109

转载 C++static

一、面向过程设计中的static 1、静态全局变量 在全局变量前,加上关键字static,该变量就被定义成为一个静态全局变量。我们先举一个全局变量和静态全局变量的例子,例如,在文件A中定义静态全局变量 i 和全局变量 j : [cpp] view plain copy#include<iostream>  using namespace std;  static int i = 5; ...

2018-03-21 16:03:13 179

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除