自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

C__Monkey的专栏

我可以接受失败,但绝对不能接受自己都未曾奋斗过。-迈克·乔丹

  • 博客(87)
  • 收藏
  • 关注

原创 二叉树的遍历以及搜索

#include #include #define ElemType char#define  MaxQsize 20#define TRUE 1#define FALSE 0using namespace std;typedef struct BiTNode{   ElemType data;   struct BiTNode *lchild,*r

2012-10-17 08:47:45 416

原创 循环队列

循环队列的类型定义  #define QueueSize 100 //应根据具体情况定义该值  typedef char DataType; //DataType的类型依赖于具体的应用  typedef struct{  int front; //头指针,队非空时指向队头元素  int rear; //尾指针,队非空时指向队尾元素的下一位置

2012-10-17 08:15:29 536

原创 二分查找算法 递归和非递归

二分查找算法: 1) 递归方法实现: int BSearch(elemtype a[],elemtype x,int low,int high) /*在下届为low,上界为high的数组a中折半查找数据元素x*/ { int mid; if(low>high) return -1; mid=(low+high)/2; if(x==a[

2012-10-17 08:02:16 506

原创 优先队列priority_queue容器的使用方法:出队,入队,删除队首元素,判断是否为空

#include #include using namespace std;int main(){priority_queue pq;//入队,插入新元素;pq.push(1);pq.push(2);pq.push(3);pq.push(9);//返回队列中元素数目;cout //所有元素出队,删除所有元素while (p

2012-10-17 07:53:50 12755

原创 用vector向量容器装入10个整数,使用迭代器iterator和accumulate算法统计这10个元素的和

#include #include #include using namespace std;int main(){vector v;int n;for (vector::size_type i=0; i {cin >> n;v.push_back(n);}for(vector::iterator index

2012-10-17 07:53:14 1236

原创 用map实现数字分离

#pragma warning(disable:4786)#include #include #include using namespace std;int main(){map m;m['0'] = 0;m['1'] = 1;m['2'] = 2;m['3'] = 3;m['4'] = 4;m['5'] = 5;m['6'] =

2012-10-17 07:52:43 469

原创 双向链表容器list的头尾中,全部删除

#include #include using namespace std;int main(){list l;for (size_t i=1; i {l.push_back(i);}list::iterator it;for(it=l.begin(); it != l.end(); ++it){cout }cout

2012-10-17 07:51:53 459

原创 双向链表容器list的头部、尾部、中间的插入

#include #include using namespace std;int main(){list l;//从尾部插入for (size_t i=1; i != 6; ++i){l.push_back(i);}list::iterator it;for(it=l.begin(); it != l.end(); ++it){

2012-10-17 07:51:27 697

原创 容器元素的删除erase,size,clear方法的使用

#include #include using namespace std;int main(){vector v;for(size_t i=0; i !=10 ; ++i){v.push_back(i);}for (vector::iterator it =v.begin(); it != v.end(); ++it){co

2012-10-17 07:50:48 676

原创 把字符指针赋给一个字符串对象

#include #include using namespace std;int main(){string s;char ss[50000];scanf("%s",&ss);//注意字符数组的数据名也要取地址,不然ss只是指向第一个字符的地址;s = ss;   //直接把指针赋值给string 对象了cout return 0;

2012-10-17 07:50:17 656

原创 把输入的整数或者实数数据当成字符串来处理,方便

#include #include #include using namespace std;int main(){string s;s="123456789";int sum =0;for (size_t i=0; i != s.length() ; ++i){if(s[i]=='1')sum+=1;if(s[i]=='2')

2012-10-17 07:49:33 505

原创 vertor容器里面的insert()方面要求插入的位置,是元素的迭代器位置,而不是元素的下标

#include #include using namespace std;int main(){vector v(5);v[0]=0;v[1]=2;v[2]=4;vector::iterator index;for(index = v.begin(); index != v.end(); ++index){cout

2012-10-17 07:47:48 517

原创 string对象追加可用加号或者用append追加

#include #include using namespace std;int main(){string s;s.append("123");s.append("abc");s.append("456");cout cin.get();return 0;}

2012-10-17 07:47:07 591

原创 string对象与数值相互转换

#include #include #include using namespace std;//c++方法:将数值转换为stringstring converToString(double x){ostringstream o;if (o return o.str();return "conversion error";}/

2012-10-17 07:46:27 364

原创 string对象的insert,replace,earse,变成空串的方法

#include #include using namespace std;int main(){string s;s = "abcdedf";//插入string::iterator it;s.insert(s.begin(),'1');cout cout cout //替换,从第三个位置,连续4个位置,替换fans.replace

2012-10-17 07:44:59 946

原创 stack容器的用法:入栈、出栈、访问栈顶元素,判断是否为空

#include #include using namespace std;int main(){stack s;//入栈s.push(1);s.push(2);s.push(3);s.push(4);s.push(9);//读取栈顶元素cout //返回堆栈元素数量cout //判断堆栈是否为空cout

2012-10-17 07:43:39 3997 1

原创 sort默认升序排序

#include #include #include //reverse ,sort算法用的到using namespace std;int main(){vector v;for (size_t i=0; i != 10; ++i){v.push_back(i);}vector::iterator it ;for (i

2012-10-17 07:41:44 929

原创 set容器元素的插入和中序遍历,反向遍历,反向迭代器reverse_iterator和rbegin(),rend();

#include #include using namespace std;int main(){set s;s.insert(1);s.insert(12);s.insert(6);s.insert(8);//没用//中序遍历集合中的所有元素set::iterator it;for (it=s.begin(); it !=

2012-10-17 07:41:09 1925

原创 reverse反向排列

#include #include #include //reverse算法用的到using namespace std;int main(){vector v;for (size_t i=0; i != 10; ++i){v.push_back(i);}vector::iterator it;for (it=v.begin

2012-10-17 07:40:34 355

原创 queue队列容器入队,出队,读取队首元素,队尾元素,判断是否为空

#include #include using namespace std;int main(){queue q;q.push(1);q.push(2);q.push(3);q.push(9);//返回队列元素数量cout //队列是否为空cout //读取队首元素cout //读取队尾

2012-10-17 07:40:07 16631

原创 multimap对象创建、元素插入

#pragma warning(disable:4786)#include #include #include using namespace std;int main(){multimap m;//插入元素m.insert(pair("Jack",300.5));m.insert(pair("KIty",200));m.insert(p

2012-10-17 07:39:42 582

原创 map容器创建、元素插入和前向遍历访问

#include #include #include using namespace std;int main(){map m;m["Jack"] = 98.5;m["Bomi"] =96.0;m["Kate"] = 97.5;//前向遍历元素map::iterator it;for (it=m.begin(); it != m.en

2012-10-17 07:39:08 597

原创 list容器查找算法find(),

#include #include #include //注意需要这个库using namespace std;int main(){list l;for(size_t i=1; i {l.push_back(i);}list::iterator it;for (it=l.begin(); it!=l.end();++it){

2012-10-17 07:38:29 1537

原创 deque双端队列容器前、中、尾部插入

#include #include using namespace std;int main(){deque d;//尾部插入d.push_back(1);d.push_back(2);d.push_back(3);cout //从头部插入,不会增加元素,只会覆盖,而且元素往后移动d.push_front(10);

2012-10-17 07:37:54 826

原创 编写函数,要求输入年月日时分秒,输出该时间的下一秒

#include #include using namespace std;void ResetTheTime(int *year,int *month,int *date,int *hour,int *minute,int *second){int dayofMonth[12]={31,28,31,30,31,30,31,31,30,31,30,31};i

2012-10-17 07:34:54 1794

原创 C++去掉注释

#include #include #include #include #include /***** *功能:移除C/C++程序代码中的注释 * *输入:指向C/C++程序代码的指针 */void remove_comment(char *buf,size_t size){char *p,*end,c;//单引号,双引号

2012-10-17 07:34:30 1131

原创 一个五位数ABCDE乘与4为EDCBA五个数还不重复

#include using namespace std;int main(){for (int i=10000; i{int j=0;int t=i;while (t!=0){j=j*10 + t%10;t /=10;}if ((i {cout break;}}}

2012-10-17 07:33:57 1127

原创 用宏定义FIND求一个结构体里某个变量相对于sturct的偏移量

如:struct student{int a;char b[20];double ccc;}则:FIND(student,a)//等于0    FIND(student,b)//等于4#define FIND(sturct,e) (size_t)&(((struct*)0)->e)因为该结构体首地址就是为0,所以其实就是得到成员e的偏移量

2012-10-17 07:33:13 567

原创 写一个标准宏输入两个参数返回较小的一个

#define MIN(A,B) ((A)<=(B)?(A):(B))

2012-10-17 07:32:20 1166

原创 直接访问固定内存地址并赋值,编译器是会报错的

直接访问固定内存地址并赋值,编译器是会报错的。注意的转换为长整型long *p;p=(long*)0x12456789*p=0;

2012-10-17 07:31:49 533

原创 第一行第一列递增,其余等于上面的数字和左边的数字的和

f(m,n) = {n (m=1)m (n=1)f(m-1,n)+f(m,n-1) (上面一行和左边一行之和) }递归方法:#include using namespace std;int f (int m ,int n){if (1==m){return n;}if (1==n){return

2012-10-17 07:31:03 859

原创 查找A数组中某值与B中某值等值

#include using namespace std;void matching(int a[],int b[],int k){int i=0;while (i {int j=0;while ( j {if (a[i] == b[j]){cout break;}j++;}i++;}cout

2012-10-17 07:30:23 890

原创 找出水仙花数

#include #include using namespace std;int main(){int g_iMax =0;cout cin>> g_iMax;try {if (g_iMax throw  g_iMax;}//依次检查从0到输入的数据for (int l_iLoop=0; l_iLoop {int l_iTm

2012-10-17 07:28:36 704

原创 打印矩阵N,按顺序增加

矩阵如下:1 2 34 516 17 1819 615 24 2520 714 23 2221 813 12 1110 9#include using namespace std;int a[10][10];void Fun(int n){int m=1,i,j;for (i=0; i{

2012-10-17 07:27:57 819

原创 析构函数的用法

要注意,vector对象指针能够自动析构,所以不需要再调用 delete ,否则会造成两次析构对象#include #include using namespace std;int i=0;int j=0;class CDemo{public:CDemo():str(NULL){cout }CDemo(const CDem

2012-10-17 07:27:29 400

原创 删除元素导致迭代器问题

#include #include using namespace std;void print(vector);int main(){vector array;array.push_back(1);array.push_back(6);array.push_back(6);array.push_back(3);//删除array数组中所

2012-10-17 07:26:25 419

原创 把普通函数修改成泛型函数

在一个数组里面寻找一个相同的元素把普通函数修改成泛型函数const int *find1(const int* array,int n, int x){const int *p = array;for (int i=0; i {if (*p == x){return p;}++p;}return 0;}//////

2012-10-17 07:25:31 749

原创 函数指针当做参数传递给另外一个函数

#include //比较函数int jug(int x,int y){if (x >=0)return x;else if (y==0)return x;elsereturn x/y;}//求和函数int sub(int x, int y){return (x+y);}//求差函数int minus(int x,

2012-10-17 07:24:47 790

原创 试用多态实现线性表

/*队列、串、堆栈都可以实现push,pop 测长等操作,现在要求用多态去实现,就要建立一个线性表的共性模板;*/#include using namespace std;templatestruct tcontainer{virtual void push(const t&) =0;virtual void pop() =0;virtual

2012-10-17 07:24:16 418

原创 编写类String的构造函数、析构函数和赋值函数

已知类String 的原型为:class String{public:String(const char *str = NULL);//普通构造函数String(const String &other);//拷贝构造函数~String(void);//析构函数String & operator = (const String &other);//赋值

2012-10-17 07:23:19 296

空空如也

空空如也

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

TA关注的人

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