自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ZOJ2136解题报告

算法分析:这是个动态规划的问题,先求其子集,保存子集的结果,然后在子集的基础上再进行计算。此题要求最大升序子序列的长度,可以逆向考虑,先计算以第i个数为终点的最大升序子序列的长度,然后计算i后面的类似子序列。遍历的时候从首部开始,依次计算,最后求出最大的升序子序列。数据结构:使用数组,vector.代码实现:#include #include #include using nam

2012-07-17 11:10:58 1051

原创 boj64解题报告

算法分析:问题是所有小朋友都能拿到喜欢的糖果的概率。这是个“且”的关系。根据每个小朋友喜欢的糖果颜色,计算在此次能拿到匹配的糖果的概率,然后加入a颗不同颜色的糖果,等待下次抽取。以此,计算满足所有小朋友爱好的概率。数据结构:使用vector存储小朋友的爱好,以及原始糖果数量。代码实现:#include #include #include #include #include u

2012-07-16 20:55:37 480

原创 计算n的阶乘

#include int f(int n){ int k; if(n > 1) k = n*f(n-1); else return 1; return k; } int main(int argc,char *argv[]){ int k = 4; printf("%d",f(k)); getchar(); retu

2012-04-03 16:35:27 586

原创 函数调用计算面积

#include #include #define PI 3.1415926float area(float r);float perimeter(float r);int main(int argc,char* argv[]){ float r; float s,l; printf("input radius:\n"); scanf("%f",&r

2012-03-02 16:48:22 1373

原创 scanf函数

//#include "stdafx.h"#include #include int main( ){ char string[50]; scanf("%[^\n]",string);// %[] 扫描字符集合,直到回车换行符号为结束。 printf("%s\n",string); /* char str[80];

2012-03-01 11:41:49 404

原创 关于multimap

multimap与map基本相同,唯独不同的是multimap允许插入重复键值的元素,而map不允许插入重复键值。#pragma warning(disable:4786)#include#include#includeusing namespace std;int main(int argc,char* argv[]){ multimap m;

2012-02-29 21:08:30 536

原创 一道算法题。

题目是这样的:N team competitions, numbered 0,1,2 respectively. . . . N-1, known comparison of strength of relationship, stored in a two-dimensional array w[n][n ], w[i][j ] represents the value of a number

2012-02-09 11:26:32 594

原创 一道算法题的解析

看到过这么一个算法题,据说是一个面试题。一个整数数组,包含有正数和负数,重新排列使负数排在正数前面,并且要求不改变原来的正负数之间相对顺序 比如: input: 1,7,-5,9,-12,15 ans: -5,-12,1,7,9,15 要求时间复杂度O(N),空间O(1)    先看个时间复杂度O(n^2)的:for(i=n-1; i>=0; i--){ int j=i;

2012-02-08 12:31:13 435

原创 set集合容器

#include#includeusing namespace std;int main(int argc,char* argv[]){ set s; s.insert(8); s.insert(1); s.insert(12); s.insert(6); s.insert(8);//重复,无法插入 set::iterator it;

2012-02-03 10:57:46 369

原创 sstream

#include#include#includeusing namespace std;//C++方法,将数值转化为string。string converttostring(double x){ ostringstream o; if(o<<x) return o.str(); return "error";}//C++方法,将stri

2012-02-03 08:29:41 591

原创 sscanf函数

#include#includeusing namespace std;int main(int argc,char* argv[]){ string s1,s2,s3; char sa[100],sb[100],sc[100];//把一个字符串分离成字串,分隔符为空格。 sscanf("abc 123 pc","%s %s %s",sa,sb,sc)

2012-02-02 20:15:39 466

原创 string对象与字符数组互操作

#include#includeusing namespace std;int main(int argc,char* argv[]){ string s; char ss[100]; scanf("%s",&ss);//输入字符串到字符数组中 s=ss; printf(s.c_str());//printf输出字符串对象,要采用c_s

2012-02-02 15:04:34 672

原创 string类型的数字化处理

#include#include#include#includeusing namespace std;int main(int argc,char* argv[]){ string s; s="1234059"; int i; int sum=0; for(i=0;i<s.length ();i++) { if(s

2012-02-02 11:59:36 574

原创 string对象的比较

#include#includeusing namespace std;int main(int argc,char* argv[]){ string s; s.append("cat dog cat");//s比cat字串大,返回1 cout<<s.compare ("cat")<<endl;//s与cat dog cat字串相等,返回0

2012-02-02 11:42:26 458

原创 字符串的查找

#include#includeusing namespace std;int main(int argc,char* argv[]){ string s; s.append("cat dog cat"); cout<<s.find ('c')<<endl;//查找第一个字符'c',返回下标值 cout<<s.find ("c")<<en

2012-02-02 10:21:21 429

原创 字符串的长度

#include#includeusing namespace std;int main(int argc,char* argv[]){ string s,t; /*s.append("123456"); string::iterator it=s.begin (); s.erase(it+2); cout<<s<<endl;

2012-02-02 09:59:44 452

原创 算法应用

分治法(二分检索,快速排序,归并排序),    贪心算法(Huffman编码,Prim算法,Kruskal算法,Dijstra算法),    动态规划(Prim算法,Dijstra算法,Floyd算法,最佳二叉搜索树),    栈的引用(深度优先周游),    队列的应用(广度优先周游

2012-02-01 19:38:34 340

原创 位操作运算

前些天遇到一段关于c语言位运算的代码。     英文原文如下:    As an illustration of some of the bit operators, consider the function getbits(x,p,n) that returns the (right adjusted) n-bit    field of x that begins at posi

2012-02-01 10:01:38 441

转载 搜索引擎原理及其组成部分和功能

搜索引擎分为搜索器,索引器,检索器,人机接口四部分。建立索引是个复杂的过程,索引数据库是搜索引擎前端和后端的联系桥梁,可以说起到了管理器的作用。     下面对整个过程做个简要介绍:     (1)搜索器(俗称的网络蜘蛛Robot)从互联网上抓取网页,把网页送入网页数据库,从网页中“提取URL”,把URL送入URL数据库,网络蜘蛛根据得到网页的URL,继续抓取其它网页,反复循环直到把所

2012-02-01 08:54:08 4211

原创 大小端模式

大端模式:数据的高字节存储在低地址中,而字数据的低字节则存放在高地址中。小端模式:大端存储格式相反,在小端存储格式中,低地址中存放的是字数据的低字节,高地址存放的是字数据的高字节。

2012-01-31 19:15:15 477 2

原创 向量的大小

#include#include#includeusing namespace std;int main(int argc,char* argv[]){ vector v(10); for(int i=0;i<10;i++) { v[i]=i; }//输出向量是否为空,如果非空,返回逻辑假(0),否则返回逻辑真(1). co

2012-01-31 16:57:52 917

原创 sort函数

自己设计一个名为comp的排序比较函数,然后把这个函数指定给sort算法,那么,sort就根据这个比较函数指定的规则进行排序。#include#include#includeusing namespace std;bool comp(const int &a,const int &b){ if(a!=b)return a>b; else return a>b;

2012-01-31 12:39:42 345

原创 。。。

机器学习;数据挖掘;信息检索;文本分类/聚类;自然语言处理;分布式计算;个性化推荐及特征建模。谷歌、bing、百度、雅虎、搜狗、搜搜、宜搜、中搜、有道、人民搜索

2012-01-31 12:32:37 304

原创 reverse反向排列算法

reverse算法可以将向量中某段迭代器区间元素反向排列。#include#include#includeusing namespace std;int main(int argc,char* argv[]){ vector v(10); for(int i=0; i < 10;i++) { v[i]=i; } revers

2012-01-31 12:14:24 1459

原创 vector向量容器的删除

erase()方法可以删除vector中迭代器所指的一个元素或一段区间中所有元素。clear()方法则一次性删除vector中所有的元素。  #include#includeusing namespace std;int main(int argc,char* argv[]){ vector v(10); for(int i=0;i<10;i++)

2012-01-31 09:23:57 7272

原创 关于vector对象的insert。

vector向量容器中使用insert()方法,可以在vector对象的任意位置前插入一个新的元素,书上说,insert()方法要求插入的位置,是元素迭代器的位置,而不是元素的下标,刚开始不太明白什么意思,直到看了一个程序后才知道。#include#includeusing namespace std;int main(){ vector v(3); v[0]=2;

2012-01-31 08:52:44 49245 12

转载 垂直搜索

垂直搜索技术主要分为两个层次:模板级和网页库级。          模板级是针对网页进行模板设定或者自动生成模板的方式抽取数据,对网页的采集也是针对性的采集,适合规模比较小、信息源少且稳定的需求,优点是快速实施、成本低、灵活性强,缺点是后期维护成本高,信息源和信息量小。          网页库级就是在信息源数量上、数据容量上检索容量上、稳定性可靠性上都是网页库搜索引擎级别的要求,和模板方

2012-01-30 20:17:02 801

转载 分治贪心法动态规划适用场合

分治法能解决的问题一般具有以下特征:     1,该问题的规模缩小到一定的程度就可以容易地解决;      2,该问题可以分解为若干个规模大小的相同问题,即该问题具有“最有子结构性质”;      3,利用该问题分解出的子问题的解可以合并为该问题的解;      4,该问题所分解初的各个子问题是相互独立的,即子问题之间不包含公共的子问题;上述的第一条特征是绝大多数问题都可以满足

2012-01-29 20:41:25 1423

原创 vevector向量容器

vector向量容器不仅能像数组一样对元素随机访问,还能在尾部插入元素。具有内存自动管理功能,对于元素的插入和删除,可动态调整所占内存空间。vector的容量可以事先定义一个固定大小,也可事先不定义,随时使用push_back从尾部扩张元素,也可以使用insert()在某元素位置前插入新元素。begin()返回的是首元素位置的迭代器,end()返回的是最后一个元素的下一个元素位置的迭代器。

2012-01-26 08:29:48 456

原创 汇编语言中用到的寄存器

AX成为累加器,I/O指令均使用该寄存器。BX为基址寄存器,访问内存时用于存放基地址。SP为堆栈指针寄存器,BP为基址指针寄存器,在做数组和字符运算时,用于存放内存的便宜地址。SI为源变址寄存器,DI为目的变址寄存器,用于数据块操作的内存寻址。

2012-01-22 15:45:06 458

原创 关于strcasecmp的一个小程序

在网上看到一个关于strcasecmp的一个例子程序,如下:#include#includeint main(){ char *a="abcdef"; char *b="AbCdEf"; if(!strcasecmp(a,b)) printf("%s=%s\n",a,b); return 0;}    可是在编译之后出现错误提示:error

2012-01-22 15:29:11 1134

空空如也

空空如也

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

TA关注的人

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