- 博客(24)
- 收藏
- 关注
原创 约瑟夫环的数组实现方式
使用数组实现,一个为数据数组,一个为标记数组,用来标记数组中的元素是否已经弹出。#include#include#includeusing namespace std;const len=5;//用数组实现的约瑟夫环问题int main(){ int m=3,k=2; char *p=new char[100]; char *head; gets(p); int da[
2013-08-30 21:01:33
604
转载 四则运算
计算10以内的+-*/运算。以字符串的形式输入,输出结果。如:“1+2/3” 输出:1.#include#include#includeusing namespace std;const len=5;//四则运算int cal(int ch1,char op,int ch2){ switch(op){ case '+': return ch1+ch2; case '
2013-08-30 19:27:00
484
原创 字母权值分配问题
现有字母a-z(不分大小写),可以为这些字母分配1-26的权值。给定两个字符串,由a-z组成,字符串的权值等于所有字符的权值相加,问怎么样分配权值,才能使两个字符串的差值最大。#include#includeusing namespace std;const len=26;int main(){ char *p1=new char[50]; char *p2=new ch
2013-08-29 22:30:13
1589
原创 字符串压缩
将字符串压缩为:字符连续出现的次数+该字符,如果字符连续出现的次数为1,则保持该字符不变。如:abbccc 输出 a2b3c#include#includeusing namespace std;int main(){ int c=1; char *p=new char[100]; char *res=new char[100]; char *r=res; gets(p
2013-08-29 21:28:20
527
原创 字符串过滤器
输入一个字符串,如果某一字符不是在该字符串中的第一次出现,则删除该字符。如:aabbcca 输出:abc#include#includeusing namespace std;int main(){ int i[256]={0}; string str; char *p=new char[100]; gets(p); str=p; string::size_type
2013-08-29 21:08:28
535
原创 圆桌问题
有n个人坐在一个圆桌上,从第k个人开始报数,报到第m个数时,此人离开圆桌,继续从下一个人开始报数,直到桌上的人都离开为止。:使用循环链表实现。#include#includeusing namespace std;class dll{public: dll():data(0),prev(NULL),next(NULL){} int data; dll *prev;
2013-08-29 20:49:57
572
原创 计算任意一天是星期几
输入为:年月日字符串,如“19940821”输出为1至7之间的数字,分别代表周一至周日。代码如下:#include#includeusing namespace std;int main(){ char *p1=new char[50],*p2=new char[50]; int Y,M,D; long int W; gets(p1); sprintf(p2,"%08
2013-08-29 17:03:23
674
原创 去除字符串中的元音字母
使用string中find_first_of函数和erase函数。其中find_first_of参数为(size_type型的下标值,string字符串),返回参数为size_type型的下标值。而erase函数参数为(指向元素的迭代器),返回为指向下一个元素的迭代器。所以要对迭代器和下标两种类型互相转化一下。#include#includeusing namespace st
2013-08-28 21:44:39
1841
原创 图书模糊检索
简单的图书检索系统。要求:对图书进行模糊查找。给出一组书名,给出一个或多个检索单词,将检索结果输出:按照检索单词的匹配个数的多少进行排序,匹配个数多的书名排在前面输出,如果匹配相同,则按照字母升序排序。代码如下:#include#include#include#includeusing namespace std;//自定义类,存储在vector中。class
2013-08-28 17:50:49
1295
原创 100以内的加减法
计算100以内的加减法,输入为算式的字符串形式,操作数 运算符 操作数 ,如”3 + 4“,数字和运算符中间有一个空格。输出:如果格式正确,则输出计算结果,如果格式错误,则输出0。#include#includeusing namespace std;int main(){ char *p=new char[100]; char *resstr=new char[100];
2013-08-28 09:47:20
1225
原创 wasting time
从8月22日早上一直到8月23日傍晚我一直在装一个叫做sql的东东经历是相当的曲折,先从校pt上下载了sql2008,安装失败,说是缺少某个cab文件,一定是我安装的方式不对,于是重试了一次,还是缺少cab文件,呵呵,真的是文件的问题。安装是没成功,但是还是安装上了部分功能,于是我又把这些组件一一卸掉,以备下一次安装。从pt上下载了一个sql2005,装上了,发现连接不
2013-08-23 21:04:43
425
原创 最小堆的一些操作
包括:建立、插入一个节点、删除其中一个节点,用最小堆排序。#include using namespace std;int const len=10;//建立一个最小堆int left(int i){ return 2*i+1;}int right(int i){ return 2*i+1+1;}int parent(int i){ return
2013-08-21 12:06:35
463
原创 排序
1、分治法排序#includeusing namespace std;const int len=5;void Merge_s(int *A,int p,int q,int r){ int n1=q-p+1; int n2=r-q; int i=0,j=0,k=0; int L[n1+1],R[n2+1]; for(i=0;i<n1;i++)
2013-08-19 21:57:31
506
原创 程宝P225 求一个字符串中连续出现次数最多的子串。
书上提供的方法,先将字符串的长度为1:n的后缀子串取出,再根据后缀子串的特点,寻找连续出现的子串,一旦发现有两个子串是相同且连续的,则针对该子串继续判断它是否会再次连续出现,若是则将计数+1,若不是,则跳出循环。继续计算下一个子串连续出现的次数。直到所有的后缀子串都遍历结束,输出最大值。#include#include#include#include#include using na
2013-08-18 21:42:37
570
原创 如:1122333变为122233,将字符串转换为字符+字符连续出现的次数
统计字符连续出现的次数cont,然后将该字符和cont写入字符串中,使用两种方法实现,一种是普通方法,将cont转化为字符串,将字符转化为字符串,然后使用strcat将两者分别连接到字符串后面。另一种使用sprintf打印数字或符号到字符串的方法,比较方便。#include#include#include#includeusing namespace std;char *ctos(c
2013-08-18 10:53:31
1364
原创 将一句话里的单词进行倒置,标点符号不倒换。
比如 一句话“i love you.”转换后为:“you. love i”。#include#include#includeusing namespace std;int main(){ char *p=new char[50]; char *pt=new char[50]; char *h,*ht,*t,*hh,*hht;//h,hh用来保存p的头地址;ht
2013-08-17 17:23:52
2966
原创 自写strstr函数
给出一个字符串和另一个字符串,若后者为前者的子字符串,则返回其所在位置的起始指针。#include#include#includeusing namespace std;const char* strs(const char*, const char*);int main(){ char *str=new char[20]; char *substr=new cha
2013-08-16 21:40:55
616
原创 字符串和数字的相互转化
字符串和数字的相互转化#include#includeusing namespace std;int main(){ int num=0; char *p=new char[11]; gets(p); cout<<*p; while(*p!='\0') { num=num*10+*p-'0'; p++;
2013-08-16 10:17:11
436
原创 Tennis ground management
有一个网球馆,有1到100个场地,设计一个管理系统,用于管理场地的分配与回收,每次可以申请一定长度的连续场地,如果有满足条件的场地则予以分配,如果没有则给予提示,归还场地的时候要提供当时分配的场地号和场地长度。设计:使用链表来管理可分配的单位,每个链表包括两个数据项:一块连续的空闲场地的第一块场地的号码,该连续场地的长度。指针指向下一块连续的空闲场地。编写了函数以提供以下操作:crea
2013-08-13 11:53:13
417
原创 hw机试题8/10下午第二题
//给出n个数字,n小于等于20,判断第2:n个数字中是否存在和等于第1个数。//标准输入如:10 5 4 6//由于不知道数字的具体个数,所以需要将输入以字符串的形式读入,然后再从中提取中数字。//首先选用char指针实现。#include#include#include"stdio.h"using namespace std;int main(){ char *buff
2013-08-11 18:18:43
472
原创 读取字符的总结
#include#include#include"stdio.h"using namespace std;int main(){ char *buffer=new char[8]; char c; string str; //-------------读取一行 gets(buffer);//读取一串由回车结束的字符串,但并不存储回车。
2013-08-11 16:52:37
481
原创 路漫漫其修远兮 吾将上下而求索
还有一个月就要开始找工作了,还是感觉自己什么都不会今天找了一天的书想了下将来要做什么找的书都是计算机方向的难道我要摒弃我的老本行通信去搞计算机吗这样的话不是抛弃了自己的优势吗纠结要看的要学的一大堆短短的一个月怎么也不可能学那么多压力很大面前是个岔路口 并且每条路都不好走就此开始记录自己的找工作过程,看看自己的心态会有何
2013-07-30 21:38:30
354
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人