自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

聚精会神搞建设

一心一意谋发展

  • 博客(109)
  • 资源 (6)
  • 收藏
  • 关注

原创 C++ STL MAP 使用方法与应用介绍(三)

4 、 数据的查找(包括判定这个关键字是否在map中出现)在这里我们将体会,map在数据插入时保证有序的好处。要判定一个数据(关键字)是否在map中出现的方法比较多,这里标题虽然是数据的查找,在这里将穿插着大量的map基本用法。这里给出三种数据查找方法第一种:用count函数来判定关键字是否出现,其缺点是无法定位数据出现位置,由于map的特性,一对一的映射关系,就决定了coun

2013-04-29 19:18:00 1358

原创 C++ STL MAP 使用方法与应用介绍(二)

Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。这里说下map内部数据的组织,map内部自建一颗红黑树(一种非严格意义上的平衡二叉树),这颗树具有对数据自动排序的功能,所以在map内部所有的数据都是有序的,后边我们会见识到有

2013-04-29 18:41:26 3383

原创 在一个字符串中找到第一个只出现一次的字符。

/********************************************* 在一个字符串中找到第一个只出现一次的字符。如输入abaccdeff,则输出b*********************************************/#include #include #define N 256int charHash[N] = {0};void init

2013-04-29 16:38:30 2921 1

原创 C++ STL MAP 使用方法与应用介绍(一)

1、map简介 map是一类关联式容器。它的特点是增加和删除节点对迭代器的影响很小,除了那个操作节点,对其他的节点都没有什么影响。对于迭代器来说,可以修改实值,而不能修改key。2、map的功能 自动建立Key - value的对应。key 和 value可以是任意你需要的类型。 根据key值快速查找记录,查找的复杂度基本是Log(N),如果有1000个记录,最

2013-04-29 16:29:18 1945

转载 C++中bitset类的使用方法与应用

有些程序要处理二进制位的有序集,每个位可能包含的是0(关)或1(开)的值。位是用来保存一组项或条件的yes/no信息(有时也称标志)的简洁方法。标准库提供了bitset类使得处理位集合更容易一些。要使用bitset类就必须要包含相关的头文件。并使用std::bitset的using声明:#i nclude using std::bitset; bitset的定义和初始化下表

2013-04-29 16:09:22 2176

转载 STL vector 使用方法简介 (二)

C++中的vector使用范例一、概述vector是C++标准模板库中的部分内容,它是一个多功能的,能够操作多种数据结构和算法的模板类和函数库。vector是一个容器,它能够存放各种类型的对象,简单地说,vector是一个能够存放任意类型的动态数组,可以动态改变大小。例如:// c语言风格int myHouse[100] ;// 采用vectorvector vec

2013-04-29 15:49:17 1277 1

转载 异或运算符的巧妙应用

参与运算的两个值,如果两个相应bit位相同,则结果为0,否则为1。即: 0^0 = 0,     1^0 = 1,      0^1 = 1,      1^1 = 0按位异或的3个特点:(1) 0^0=0,0^1=1  0异或任何数=任何数(2) 1^0=1,1^1=0  1异或任何数-任何数取反(3) 任何数异或自己=把自己置0按位异或的几个常见用途:

2013-04-29 15:34:56 1662

原创 C语言中的BOOL与C++中的bool

一:1、类型不同 BOOL为int型 bool为布尔型 2、长度不同 bool只有一个字节 BOOL长度视实际环境来定,一般可认为是4个字节 3、取值不同 bool取值false和true,是0和1的区别 BOOL取值FALSE和TRUE,是0和非0的区别 二: bool是标准C++数据类型,可取值true和fal

2013-04-29 15:25:35 3707

原创 STL vector 使用方法简介(一)

vector是一种动态数组,是基本数组的类模板。其内部定义了很多基本操作。#include 注意:头文件没有“.h”构造:这个构造函数还有一个可选的参数,这是一个类型为T的实例,描述了各个向量中各成员的初始值;如:vector v2(init_size,0); 如果预先定义了:int init_size;他的成员值都被初始化为0;· 复制构造函数,构造一个新的向量,作

2013-04-28 20:04:03 1493

原创 STL常用容器简介 vector deque list map set

1、顺序性容器(1)vector  vector是一种动态数组,在内存中具有连续的存储空间,支持快速随机访问。由于具有连续的存储空间,所以在插入和删除操作方面,效率比较慢。vector有多个构造函数,默认的构造函数是构造一个初始长度为0的内存空间,且分配的内存空间是以2的倍数动态增长的,即内存空间增长是按照20,21,22,23.....增长的,在push_back的过程中,若发现分配的内

2013-04-28 18:12:32 1475

转载 STL标准模板库学习--STL 很好很强大

从标准输入设备(一般是键盘)读入一些整型数据,然后对它们进行 排序,最终将结果输出到标准输出设备(一般是显示器屏幕)。这是一种典型的处理方式,程序本身具备了一个系统所应该具有的几乎所有的基本特征:输入 + 处理 + 输出。你将会看到两个不同版本的程序。第一个是没有使用STL的普通C++程序,你将会看到完成这样看似简单的事情,需要花多大的力气,而且还未必没有一 点问题(真是吃力不讨好)。第二个程序的

2013-04-27 18:03:31 1528

转载 IBM面试题:海盗分金算法及其思想

IBM面试题:妈妈有2000元,要分给她的2个孩子。由哥哥先提出分钱的方式,如果弟弟同意,那么就这么分。但如果弟弟不同意,妈妈会没收1000元,由弟弟提出剩下 1000元的分钱方式,这时如果哥哥同意了,就分掉这剩下的1000元。但如果哥哥也不同意,妈妈会把剩下的1000元也拿走,然后分别只给他们每人100元。问:如果你是哥哥,你会提出什么样的分钱方式,使你有可能得到最多的钱?(最小

2013-04-27 17:50:28 4939

原创 采用bitmap位图算法对大量不重复数据进行线性时间排序

/********************************************************************************* 问题描述输入:一个最多包含n个正整数的文件,每个数都小于n,其中n=10^7。如果在输入文件中有任何正数重复出现就是致命错误。没有其他数据与该正数相关联。输出:按升序排列的输入正数的列表。约束:最多有1MB的内存空间可用,有

2013-04-27 17:44:38 2168

原创 规范输入 :将输入的数据中的开头,结束的空字符去掉,并将大写字符转换成小写

/***************************************************************************功能:将输入的数据中的开头,结束的空字符去掉,并将大写字符转换成小写用途:用于规范输入****************************************************************************/

2013-04-25 22:32:39 1298

原创 编程实现求幂函数double power(double base,int ex) 递归实现

#includeusing namespace std;const double precision=0.0000001;bool invalidinput=false;//判断两浮点数数是否相等的方法,不能直接用等号bool equal(double num1,double num2){ if((num1-num2<precision)||(num2-num1<precisi

2013-04-25 22:14:17 2577

原创 华为笔试题:将所给数据分解成质因数相乘形式 如435234=251*17*17*3*2

/***分解成质因数(如435234=251*17*17*3*2,华为笔试题)***/#include#includevoid prim(int m, int n){ if(m>n) { while(m%n != 0) n++; m /= n; prim(m, n); printf("%d*", n);

2013-04-25 21:45:53 2085

原创 递归方法判断数组是否为递增数组

#includeusing namespace std;bool IsIncrease( int a[], int n ){ if( n==1 ) return true; if( n==2 ) return a[n-1] >= a[n-2]; return IsIncrease( a,n-1) && ( a[n-1] >= a[n-2

2013-04-25 21:37:59 1921

转载 sprintf函数用法总结复习

函数功能:       把格式化的数据写入某个字符串缓冲区。 头文件:       stdio.h 函数原型:   int sprintf( char *buffer, const char *format, [ argument] … ); 参数列表:       buffer:char型指针,指向将要写入的字符串的缓冲区。format:char型指针,指向的内存

2013-04-25 21:22:52 1166

原创 snprintf函数用法总结复习

int snprintf(char *str, size_t size, const char *format, ...); 将可变个参数(...)按照format格式化成字符串,然后将其复制到str中 (1) 如果格式化后的字符串长度 (2) 如果格式化后的字符串长度 >= size,则只将其中的(size-1)个字符复制到str中,并给其后添加一个字符串结束符('\0') 函数

2013-04-25 20:54:02 1637

原创 华为:编程实现联想输入法 输入联想功能是非常实用的一个功能,请编程实现类似功能

/****************************************************************************输入联想问题描述:输入联想功能是非常实用的一个功能,请编程实现类似功能。要求实现函数:  void auto_complete(char *str, char *tmp,char *output)  【输入】 char *str,候

2013-04-25 17:19:59 7154

转载 应届毕业生少走弯路的10大忠告

应届毕业生少走弯路的10大忠告 刚刚走上社会的年轻人,充满了蓄势待发的豪情、青春的朝气、前卫的思想,梦想着丰富的待遇和轰轰烈烈的事业。可是,社会毕竟是一所包罗万象、喧嚣复杂的大学校,这里没有寒暑假,拒绝虚假和肤浅,更拒绝空想和庸碌,难以预告何时开课何时放学。如何在涉世之初少走弯路,有一个好的开端,开始一番成功的事业?以下是一些先行者积累的10条有益的涉世忠告。好好地遵循、把握这些忠告和

2013-04-25 16:52:09 1136

原创 华为:IP地址匹配 在路由器中,一般来说转发模块采用最大前缀匹配原则进行目的端口查找,具体如下:

/**************************************************************************************IP地址匹配问题描述:在路由器中,一般来说转发模块采用最大前缀匹配原则进行目的端口查找,具体如下:IP地址和子网地址匹配:IP地址和子网地址所带掩码做AND运算后,得到的值与子网地址相同,则该IP地址与该子网匹配。

2013-04-25 16:42:21 3491

原创 C语言sscanf函数用法总结(二) 正则表达式

sscanf() - 从一个字符串中读进与指定格式相符的数据.      函数原型:  Int sscanf( string str, string fmt, mixed var1, mixed var2 ... );  int scanf( const char *format [,argument]... );  说明:  sscanf与scanf类似,都是用于输入的,

2013-04-25 16:24:12 2772

原创 C语言sscanf函数用法总结(一) 正则表达式

#include #include #include #include using namespace std;void sscanf_test(void){ int ret; char *string; int digit; char buf1[255]; char buf2[255]; char buf3[255]; char

2013-04-24 23:46:00 3461

原创 快速判断一个数是否是4的次方并求出是4的几次方

/*****************************************************将4的幂次方写成二进制形式后,很容易就会发现有一个特点:二进制中只有一个1(1在奇数位置),并且1后面跟了偶数个0;因此问题可以转化为判断1后面是否跟了偶数个0就可以了。4的整数次幂的二进制数都为 (4)100、(16)10000、(64)1000000......4^1=b 00

2013-04-23 21:30:52 3186

原创 不使用任何辅助变量实现strlen(递归实现strlen)

/******************************************************不允许调用库函数,也不允许使用任何全局或局部变量编写 int strlen(char *strDest)******************************************************/#include#include#includeusing na

2013-04-23 20:49:16 1276

原创 数组中找两个数使其和等于输入数

/********************************************************************题目:输入一个数组和一个数字,在数组中查找两个数,使得它们的和正好是输入的那个数字。如果有多对数字的和等于输入的数字,输出任意一对即可。例如输入数组1、2、4、7、11、15和数字15。由于4+11=15,因此输出4和11。方法:1,分别从数组前,数

2013-04-23 20:19:02 1691

原创 sizeof和strlen的使用方法和区别

C语言的sizeof和strlen strlen是函数,而sizeof是算符。strlen需要进行一次函数调用,而对于sizeof而言,因为缓冲区已经用已知字符串进行了初始化,起长度是固定的,所以sizeof在编译时计算缓冲区的长度。因为sizeof()测试的是数组的长度。而strlen测试的是字符串的长度。在定义数组时,字符串后面还有一个结束标志'\0',sizeof这个也要算进去!

2013-04-23 19:59:18 1291

原创 用堆排序寻找数组中最大的K个数

/***********************************************************************************堆排序(Heapsort)是指利用堆这种数据结构所设计的一种排序算法。堆积是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点。通常堆是通过一维数组来实现的。在起始数组为 0

2013-04-22 15:31:06 4124

原创 使用数组实现大整数加法

#include#include#include#include#include#includeusing namespace std;char* add(const char *arr,const char *brr){ //求两个加数的较大值即串较长的 int lena=strlen(arr); int lenb=strlen(brr); int

2013-04-22 15:01:57 3533

原创 华为机试 删除字符串中所有给定的子串

/**********************************************************************************华为机试 删除字符串中所有给定的子串问题描述:在给定字符串中查找所有特定子串并删除,如果没有找到相应子串,则不作任何操作。要求实现函数:int delete_sub_str(const char *str, const c

2013-04-22 14:35:51 1658

原创 快速排序的库函数qsort与sort的使用方法

qsort功 能: 使用快速排序例程进行排序    用 法: void qsort(void *base, int nelem, int width, int (*fcmp)(const void *,const void *));    参数:1、待排序数组首地址; 2、数组中待排序元素数量; 3、各元素的占用空间大小; 4、指向函数的指针,用于确定排序的顺序 比如:对一个长

2013-04-22 14:29:03 4503

原创 面试题:计算n!中结尾零的个数

/************************************************************算法思想:在1-10两个数相乘要产生0,只有 10×1=2×5,2×5。200!=200×199×198……×2×1=2×5×2×5×2×199…. ×2×1;可以分解为质数相乘的形式,很明显有2的个数比5的多,所以只要求出200的阶乘可分解出多少个5相乘,就可

2013-04-22 11:21:13 2358

原创 google面试题目:寻找丑数--使用double防止数据溢出

/*******************************************************************************google面试题目:我们把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第2012个丑数。分析:假

2013-04-22 11:19:01 9564 25

原创 常用库函数编程实现用法总结(四)strdup strtok itoa atoi

/*************************************************函数名: strdup功 能: 将串拷贝到新建的位置处用 法: char *strdup(char *str);这个函数在linux的man手册里解释为:The strdup() function returns a pointer toa new string which is

2013-04-22 11:17:29 2161

原创 数组实现大数阶乘

/*********************************************************************************思路:用Data数组来存放阶乘的每一位数字,首先令第一位的数值为1,位数为1,然后将每次相乘的乘积存回数组,并循环处理每个数组中超过10的数,若数值超过10,则需要进位,将位数加1,原来的数除以10,商数加前一位数的数值后存回前一

2013-04-21 22:42:49 1502

原创 常用库函数编程实现用法总结(三) strchr strrev memset strtod

/******************************************************************************函数原型:extern char *strchr(char *str,char character)参数说明:str为一个字符串的指针,character为一个待查找字符。所在库名:#include 函数功能:从字符串str中

2013-04-21 22:38:02 1586

原创 常用库函数编程实现用法总结(二)strstr strcat

/************************************************************char* strcat ( char * dst , const char * src ) 用法:#include  功能:Concatenates src onto the end of dest. Assumes enough space in dest.

2013-04-21 11:32:13 1552

原创 常用库函数编程实现用法总结(一)memmove memcpy strcpy strncpy

/********************************************************************************memmove() copies a source memory buffer to a destination memory buffer.Thisroutine recognize overlapping buffers to

2013-04-21 11:09:29 1749

原创 找出两个字符串的最大公共子串

#include#include#include#includeusing namespace std;/*不太合理的地方时返回堆内存 防止内存泄露的任务交给了函数调用者*/char* GetSameSubstr(const char* s1,const char* s2){ int len1=strlen(s1); int len2=strlen(s2);

2013-04-21 09:55:08 1657

值得学习的MySQL行级锁、表级锁、页级锁详细介绍

值得学习的MySQL行级锁、表级锁、页级锁详细介绍

2019-03-13

为什么说B+树比B树更适合做文件索引

为什么说B+树比B树更适合做文件索引

2019-03-13

「Redis」Redis是单线程的,但Redis为什么这么快?

「Redis」Redis是单线程的,但Redis为什么这么快?

2019-03-13

如何成功运行Apache Mahout的Taste Webapp-Mahout推荐教程-Maven3.0.5-JDK1.6-Mahout0.5

教你成功运行mahout的taste webapp例子,网上的很多资料说的不清楚,或者版本冲突。正确的版本是jdk1.6 maven3.0.5 mahout0.5 。 摸索良久,亲测有效!

2016-11-23

安卓二维码生成与扫描完美解决方案

Android 基于google Zxing实现二维码、条形码扫描,仿微信二维码扫描效果 这篇文章写的不错,但是按照这篇文章使用二维码的话会出现竖屏扫描图像拉伸变长的问题(有一个地方计算错误),解决拉伸变长的问题后又会出现闪退的问题(传输大Bitmap对象导致闪退,改为Byte数组或者不传递Bitmap) 其他地方不动,即可完美移植二维码扫描功能

2016-03-08

10小时学会c语言,初学者入门必看。高效学习。

十小时学会c语言,初学者必看的入门读物Word文档

2011-04-04

空空如也

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

TA关注的人

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