c++map的用法

在阅读SSD代码中发现作者使用了C++中的map方法,因此搜索该关联式容器的使用方法,在这里一并总结。 一、Map 簡介 Map是STL的一個容器,它提供一對一的hash。 第一個可以稱為關鍵字(key),每個關鍵字只能在map中出現一次, 第二個可能稱為該關鍵字的值(value) Map以模板(泛型)方式實現,可以儲存任意類型的變數,包括使用者自定義的資料型態。Map主要用於資料一對一映射(one-to-one)的情況,map內部的實現自建一顆紅黑樹,這顆樹具有對數據自動排序的功能。比如一個
分类: 其他 发布时间: 06-04 22:17 阅读次数: 0

Avl树的建立及其基础操作

#include<stdio.h>#include<stdlib.h>#define  Max(a,b)    ( (a) > (b) ? (a) : (b))struct AvlNode;typedef struct AvlNode *Position;typedef struct AvlNode *AvlTree; typedef int ElementType;...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

日常刷题 (0)

牛客刷题        1.即使不进行强制类型转换,在进行指针赋值运算时,指针变量的基类型也可以不同?答:错,指针变量的赋值只能赋予地址, 决不能赋予任何其它数据,否则将引起错误。2.如果企图通过一个空指针来访问一个存储单元,将会得到一个出错信息。答:对。3.设变量p是一个指针变量,则语句p=0;是非法的,应该使用p=NULL。答:错,p = NULL;和p=0;是一样的。4.指针变量之间不能用关...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

日常刷题 (1)

牛客刷题1.有关类的说法不正确的是( D  )A.类是一种用户自定义的数据类型B类中的成员函数可以存取类中的私有数据C在类中,如果不作特别说明,所有的数据均为私有类型D在类中,如果不作特别说明,所有的成员函数均为公有类型解析:在C++中,类默认的方式时private,不管是继承方式还是成员。2.在gcc编译器下,针对以下代码,const char str1[] = "abc"; c...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

C++普通变量、C++静态成员变量、C++成员常量、C++静态成员常量的初始化方法

    最近复习C++的一些知识,遇到了一个我比较容易混淆、傻傻分不清的知识点,那就是C++的变量的类型初始化或赋初值,大致有普通成员变量、静态成员变量、成员常量这三种,还有一种组合的静态成员常量。    看到这几种数据成员时很尴尬,经常就把某两种搞混了,所以为了方便和好理解,在前辈的基础上做个小总结。    为了直观简洁的呈现这种对比,采用代码对比的方式完成这个事情。包括四种数据成员,进行四种初...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

C++的const

既要使数据能在一定范围内共享,又要保证它不被任意修改,可使用const。·        用const修饰的声明数据成员称为常数据成员·        用const修饰的声明成员函数称为常成员函数·        用const修饰的定义对象称为常对象变量或对象被const修饰后其值不能被更新。因此被const修饰的变量或对象必须要进行初始化。(一)用const修饰的声明数据成员称为常数据成员   ...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

左式堆的建立及其基本操作

#include <stdio.h>#include<stdlib.h>typedef int ElementType;struct TreeNode;typedef struct TreeNode *PriorityQueue;PriorityQueue Initialize(ElementType X);                                 ...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

C++中的友元机制

    C++中的友元机制(friend),可以不通过调用成员函数便能直接访问类的私有数据。友元可以是函数(友元函数),也可以是类(友元类)。    一、友元函数        1.声明:在类体内,在函数类型前要加关键字friend;        2.定义:在类体外,格式与普通函数一样;        3.特点:(1)友元函数为非成员函数,调用上与普通函数一样;                 ...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

【计算几何/线段相交】HRBUST 1559 线段相交

线段相交 Time Limit: 1000 MS Memory Limit: 10240 K Description 给定线段P1P2(P1和P2是线段的两端点,且不重合)、P3P4(P3和P4是线段的两端点,且不重合),判断P1P2和P3P4是否相交。P1P2和P3P4相交,即指存在一个点P,它既落在P1P2上又落在P3P4上(含线段的端点)。 Input 输入数据有多组...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

日历查询的算法,如何确定某一天是星期几?

/***********************************************************************************    引用的网址:           基姆拉尔森公式推导:https://www.cnblogs.com/hanxi/archive/2012/06/12/2545828.html           蔡勒公式推导:      ...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

【计算几何/线段交点】HRBUST 1579 又见线段相交

又见线段相交 Time Limit: 1000 MS Memory Limit: 10240 K Description 给定线段P1P2(P1和P2是线段的两端点,且不重合)、P3P4(P3和P4是线段的两端点,且不重合),判断P1P2和P3P4是否相交。 P1P2和P3P4相交,即指仅存在一个点P,该交点不能是线段的端点。 Input 输入数据有多组,第一行为测试...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

小白入门~ GitHub和Git超详细使用教程~~~

转自:https://blog.csdn.net/JavaAndroid730/article/details/53522872    https://blog.csdn.net/xiang_freedom/article/details/63071331https://blog.csdn.net/Hanani_Jia/article/details/77950594可能会在这里有的提示的不同,可...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

MySQL主从延迟如何解决

一. 如何检测主从延迟       可以通过监控 show slave status\G 命令输出的 Seconds_Behind_Master 参数值来判断,是否存在主从延时。       NULL - 表示io_thread或sql_thread发生故障,也就是该线程的Running状态是No。(有故障)  0 - 该值为零,是我们极为渴望看到的情况,表示主从复制良好,可以认为lag不存在。(...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

CodeBlocks配色方案修改教程

主要内容转载自:http://blog.csdn.net/bat67 https://blog.csdn.net/bat67/article/details/76102436最终效果(官方sublime修改版)官方配色codeblocks是一个功能很强大编程软件,我们在安装codeblocks后软件默认的是白底黑字界面,这种界面在长时间写代码时会对眼睛造成很大伤害,增加眼疲劳,因此我们需要一个清晰...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

Mysql数据库表分区深入详解

0、mysql数据库分区的由来?1)传统不分区数据库痛点mysql数据库中的数据是以文件的形势存在磁盘上的,默认放在/mysql/data下面(可以通过my.cnf中的datadir来查看), 一张表主要对应着三个文件,一个是frm存放表结构的,一个是myd存放表数据的,一个是myi存表索引的。[root@laoyang test]# ls -al 总用量 1811444 drwx------ 2...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

redis通用key操作命令(总)

redis默认是开启了16个数据库,在配置文件中可以修改,编号从0到15,默认选择的是0号数据库,通过使用select index命令来更改数据库1.keys pattern 命令–>获取key值 在redis里,允许模糊查询key 有3个通配符 *, ? ,[] *: 通配任意多个字符 ?: 通配单个字符 []: 通配括号内的某1个字符redis 127.0.0.1:6379> fl...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

C++多继承中的二义性问题

    在C++中,派生类继承基类,对基类成员的访问应该是确定的、唯一的,但是常常会有以下情况导致访问不一致,产生二义性。    1.在继承时,基类之间、或基类与派生类之间发生成员同名时,将出现对成员访问的不确定性——同名二义性。    2.当派生类从多个基类派生,而这些基类又从同一个基类派生,则在访问此共同基类中的成员时,将产生另一种不确定性——路径二义性。    1.             ...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

linux如何后台运行进程,而且不随终端关闭而关闭

参考:http://www.cnblogs.com/kaituorensheng/p/3980334.html使用命令nohup:no hang up,表示关闭终端后,进程并不随着终端关闭而关闭 fg、bg、jobs、&、nohup、ctrl+z、ctrl+c 命令一、&加在一个命令的最后,可以把这个命令放到后台执行,如watch -n 10 sh test.sh &...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

了解一下头疼的堆和栈的区别~

一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两回事,分配方式倒是类似于链表,呵呵。 3、全局区(静态区)(static)...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0

常用排序算法归纳(1)——冒泡排序

一、概念:冒泡排序,是对桶排序改进的一种排序,不仅解决了浪费空间的问题,而且还可以进行浮点数的比较和输出一些必要的信息,容易实现由小到大(由大到小)的一种排序方法。二、算法思路:    1、每次比较两个相邻的元素,如果它们的顺序错误就把它们交换过来;    2、用两层for循环进行比较:1>外层循环控制轮数;                               2>内层循环实现...
分类: 其他 发布时间: 06-04 22:12 阅读次数: 0