- 博客(65)
- 资源 (1)
- 收藏
- 关注
转载 C++中的vector
在c++中,vector是一个十分有用的容器。作用:它能够像容器一样存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,能够增加和压缩数据。vector在C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。 特别注意:使用vector需要注意以下几点:1、如果你要表示的向量长度较长(需要为向量内部保存很多数),...
2018-08-05 23:01:30
258
原创 读取二进制文件到txt,包括大小端转换
不多说,直接上代码#include#include#include#include #include #includeusing namespace std;#define L 101 #define M 102 #define N 103void OnChange(float InParam, float &OutPar
2017-12-14 11:06:21
1850
转载 c++虚函数表详解
C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。关于虚函数的使用方法,我在这里不做过
2017-08-26 15:00:58
367
转载 经典字典树求异或最大值
给出n个数,求在这n个数中取两个数使得他们异或最大解题思路非常经典利用字典树求异或的最大值。 读懂这个题目之后,对于初学者我们可能会思考下面的问题: 1. 两层循环o(n^2)肯定能求出了,但是肯定会超时 2. 这道题怎么做呢? 3. 思考一阵(在不知道用什么算法的情况下),会不会用把每个数转换为二进制,然后按位进行比对 4. 就算转换为二进制之后,怎么进行按个
2017-08-08 17:19:02
947
转载 c++不使用循环打印1到100
C/C++ | 如何不使用循环和判断语句实现“打印从1到100之间的数字”原文链接:http://www.keepsimply.org/2012/08/11/printing-1-to-1000-without-loop-or-conditionals/声明:翻译仅以技术学习和交流为目的,如需转载请务必标明原帖链接。来源:http://stackoverflow
2017-08-08 10:37:57
2302
原创 LRU策略
操作系统中可以使用LRU(least recently used)内存淘汰旧数据的策略,如果内存需要加载新数据但空间又不足,则会按照最近访问时间进行排序,并将最老的数据淘汰,假设现在内存空间大小为5,原本内存中没有数据,对内存中数据的访问顺序如下: 1,2,5,3,4,6,1,4,3,6,7,8,3,9求缺页次数
2017-08-05 16:40:58
748
转载 程序的内存讲解
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两
2017-08-05 16:34:18
359
转载 字符串反转方法总结
第一种:使用string.h中的strrev函数[cpp] view plain copy#include #include using namespace std; int main() { char s[]="hello"; strrev(s);
2017-07-27 15:22:14
237
原创 数组中的逆序对
方法1:归并排序class Solution {public: int InversePairs(vector data) { if(data.size() int* copy=new int[data.size()]; //初始化该数组,该数组作为存放临时排序的结果,最后要将排序的结果复制到原数组中 for(un
2017-07-22 11:08:50
234
原创 把数组排成最小的数
链接:https://www.nowcoder.com/questionTerminal/8fecd3f8ba334add803bf2a06af1b993来源:牛客网class Solution {public: staticbool compare( conststring &st1,conststring &st2){ string
2017-07-20 20:43:18
208
原创 连续子数组的最大和
class Solution {public: int FindGreatestSumOfSubArray(vector array) { if(array.empty()) return 0; int sum = array[0], tempsum = array[0]; //注意初始值 不能设为0 防止只有负数 for
2017-07-20 19:54:29
180
转载 C++虚函数和纯虚函数示例
抽象类是为了抽象和设计的目的而建立的,处于继承层次结构的上层。具体类是能够建立对象的类。抽象类的规定(1)抽象类只能用作其他类的基类,不能建立抽象类对象。(2)抽象类不能用作参数类型、函数返回类型或显式转换的类型。(3)可以定义指向抽象类的指针和引用,此指针可以指向它的派生类,进而实现多态性。#include using n
2017-07-12 19:26:51
484
转载 C++类静态成员与类静态成员函数详解
转载链接http://www.jb51.net/article/41775.htm静态成员不可在类体内进行赋值,因为它是被所有该类的对象所共享的。你在一个对象里给它赋值,其他对象里的该成员也会发生变化。为了避免混乱,所以不可在类体内进行赋值。当将类的某个数据成员声明为static时,该静态数据成员只能被定义一次,而且要被同类的所有对象共享。各个对象都拥有类中每一个普通数
2017-05-26 10:24:33
236
原创 解决域名被封锁
域名被墙了,不过没关系啦,小问题C:\Windows\System32\drivers\etc\hosts用记事本打开这个文件,在最后面添加下面一行网址
2017-05-12 10:23:57
2223
原创 三维点比较大小
const float EPS = 1e-6;// 定义点结构体typedef struct{float x, y, z;// 起源点序号int ori_idx;// 原始序号int self_idx;} P;bool cmp(P p1, P p2){if (abs(p1.x-p2.x) > EPS){return p1.x }els
2017-05-11 16:47:55
473
转载 string和stringstream的总结
一、stringstring 是 C++ 提供的字串型態,和 C 的字串相比,除了有不限长度的优点外,还有其他许多方便的功能。要使用 string, 必須先加入这一行:#include 接下來要宣告一个字串变量,可以写成:string s;我们也可以在宣告的同时让它设成某个字串:string s="TCGS";而要取得其中某一個字元,和传统C 的字串
2017-03-24 11:28:37
590
原创 万能头文件#include<bits/stdc++.h>
#include #include #include #include #include #include #include #include #include #include #include #include #include 包含以上所有头文件
2017-03-24 10:57:58
807
转载 2017年牛客网校招模拟二
abc与bca就是同一类字符串#include#include#include#includeusing namespace std;int main() { int N;cin>>N;string str;vector vec; string str1;getline(cin,str1);while (getline(ci
2017-03-24 10:37:35
1389
原创 C++中有类似于Java的Integer.MAX_VALUE
#include 这个里面有各种数据类型的最大值和最小值,比如:INT_MAX或者float.h中也有
2017-03-22 23:42:05
5317
转载 C++控制台输入输出总结
当在控制台输入数据时,所有的数据都是输入到缓冲区的,当从其中提取数据时,也是从缓冲区提取的!其有一个指向缓冲区的指针,就是通过此指针对数据提取的。例如cin>>a;就是通过>>的重载实现从缓冲区取出数据并进行相应的转换后赋值给a;如果缓冲区没有数据的话,则等待用户输入数据。1.对于从控制台读入数据到数据结构中,主要要了解的是:1,读入的数据是什么(尤其针对字符串,是否包括空格,换行
2017-03-22 23:27:35
10099
1
转载 C++中string字符串使用
提纲: 一:string型字符串声明,初始化和赋值: 1.string型字符串的声明和初始化方式: 2.string型字符串的声明和初始化的简单示例: 3.string字符串的赋值及其示例:二:string型字符串的基本操作函数: 1.基本操作函数介绍: 2.基本操作函数示例:正文:一:字符串基本操
2017-03-22 20:34:17
2682
转载 ctype.h
ctype.h里的函数 1 字符测试函数 1> 函数原型均为int isxxxx(int) 2> 参数为int, 任何实参 均被提升成整型 3> 只能正确处理处于[0, 127]之间的值 2 字符映射函数 1> 函数原型为int toxxxx(int) 2> 对参数进行检测, 若符合范围则转换, 否则不变 int tolower (int
2017-03-22 20:27:52
312
原创 C++计算运行时间和随机数的插入排序
#include#include#include using namespace std;void InsertionSort (int a[],int len){if (a==NULL||len{return ;}for(int j=1;j{int temp=a[j];int p=j;while(p>
2017-03-15 17:08:44
769
转载 生活杂谈
你毕业时,工资3000,只想吃得起快餐,在北京有个落脚的地方。然后零星有点私房钱,可以和朋友在小区门口吃烤串喝啤酒。到年关,还有点结余能回家看父母。周围的朋友同学也是刚毕业,工资水平、生活环境都差不多。大家都是一群快乐的小2B。经过一两年的摸爬滚打,你当上业务小骨干,工资提到了8000。仍然努力工作,不用为米线比盖饭便宜1块钱而去算计,房子不用住地下室和隔断了,可以住个小单间了。然
2017-03-10 21:30:37
269
原创 C++文件输入输出
常见的文本文件格式输出方法如下 char * File2 = "norms.txt"; ofstream outfile2(File2); outfile2 vecto
2017-03-10 15:25:41
466
转载 Effective C++学习笔记
文章转自http://blog.youkuaiyun.com/shenzi/article/details/5601038.声明:仅供学习复习一.让自己习惯C++ 条款01:视C++为一个语言联邦 为了更好的理解C++,我们将C++分解为四个主要次语言:C。说到底C++仍是以C为基础。区块,语句,预处理器,内置数据类型,数组,指针统统来自C。Object-Orei
2017-02-14 15:21:50
459
转载 C++内存详解http://www.jizhuomi.com/software/281.html
声明:本文转自http://www.jizhuomi.com/software/281.htmlC/C++作为偏底层的语言,我们往往可以使用其对内存进行直接操作,相对来说比较灵活,但任何事情都有两面性,对内存的操作简便也经常导致程序出现内存bug。所以我们在编程时要特别重视内存和指针等概念,尽量避免bug,而这均取决于我们对内存的理解。 本文就从C/C++的内存基础知识
2016-12-23 11:02:04
1084
原创 C++中访问控制
第一:private, public, protected 访问标号的访问范围,在没有继承的情况下:private:只能由1.该类中的函数、2.其友元函数访问。不能被任何其他访问,该类的对象也不能访问。protected:可以被1.该类中的函数、2.子类的函数、以及3.其友元函数访问。但不能被该类的对象访问。public:可以被1.该类中的函数、2.子类
2016-12-23 10:27:08
365
原创 插入排序C++实现
代码如下,时间复杂度为O(n^2)空间复杂度为O(1)特点:稳定适合简单排序,数据量较小的情况#include#include#include using namespace std;void InsertionSort (int a[],int len){if (a==NULL||len{return ;}for(int j=1;j{int
2016-11-17 16:30:36
206
原创 函数memset详解
第一:memset函数对数组而言只能用于置零(0)或置负一(-1)操作。因为memset函数是对单个字节操作如果你把int a[5] 置2;memset(a,2,sizeof(int )*5); 因为它是整数型数组有四个字节,而每个字节都被赋值为2;即数(例 int a[5])每个元素(如a[0])中的每个字节(整型数组每个元素含有四个字节)的值都被赋予成2,二进制表示及(00000010 000
2016-11-16 21:08:27
1045
原创 关于引用&的主意
使用引用符号&可以避免参数的拷贝和构造,但是引用对象必须设置到对象的实例。下面举例说明如某个函数如下bool Test(int &a){ if(a>5) return true; else return false;}那么在要调用该函数时,不能直接main.Test(8);而需要 int b=8,mai
2016-11-02 21:27:48
232
原创 删除vector中内存
for (vector::iterator it = Myvec.begin(); it != Myvec.end(); it ++){if (NULL != *it){delete *it;*it = NULL;}}
2016-10-31 21:03:43
292
原创 从"void*"到指向非"void"的指针的转换要求显式类型转换错误
错误代码:struct People * p = malloc(sizeof(struct People));正确代码:struct People * p = ( People *)malloc(sizeof(struct People));
2016-10-31 20:37:42
4736
1
转载 二叉树大全
http://blog.youkuaiyun.com/luckyxiaoqiang/article/details/7518888;http://blog.youkuaiyun.com/luckyxiaoqiang/article/details/8701926;
2016-10-28 14:59:11
212
原创 类和结构体
类中具体对象不可访问private成员,private是封装的私有成员,类的具体对象只能通过成员函数访问!结构体指针变量都需要初始化。
2016-10-17 16:56:07
227
原创 二叉树根据前序遍历和中序遍历重构确定唯一二叉树
代码如下struct TreeNode* reConstructBinaryTree(vector pre,vector in) { int inlen=in.size(); if(inlen==0) return NULL; vector left_pre,right_pre,left_
2016-10-10 15:57:31
726
matlab读取地震segy数据
2017-12-25
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人