C++基础算法荟萃
文章平均质量分 77
汇集C++笔试和基础算法,给出可以执行的示例代码和测试结果。有问题请务必反馈给我。
军说网事
从事软件开发10+年,精通C++、android、算法、数据结构;擅长理论与实际相结合,善于总结和分析。
展开
-
字符串处理算法(六)求2个字符串最长公共部分
如题,求2个字符串最长公共部分。方法一:2个循环,遍历2个字符串,这里记得要回溯,2个字符串都要有,否则,找不出来正确的结果。原创 2013-10-24 17:34:04 · 2880 阅读 · 0 评论 -
整型数组处理算法(十一)请实现一个函数:线段重叠(性能优化)。[风林火山]
请实现一个函数:线段重叠; 输入多个一维线段,求出这些线段相交的所有区域(也用线段表示); 一条线段用两个值表示(x0,x1), 其中x1>x0; 比如:输入线段数组[(2,4),(1.5,6),(0.5,3.5),(5,7),(7.5,9)], 输出线段数组[(1.5,4),(5,6)]原创 2013-10-11 21:32:00 · 3035 阅读 · 0 评论 -
字符串处理算法(五)多线程实现代码行数统计。[风林火山]
对代码行数统计,用多线程实现,分别是物理总行数,空格行数、代码行数、注释行数。原创 2013-10-10 21:33:54 · 3678 阅读 · 0 评论 -
整型数组处理算法(十三)请实现一个函数:凑14。[风林火山]
请实现一个函数:凑14;输入很多个整数(1<=数值<=13),任意两个数相加等于14就可以从数组中删除这两个数, 求剩余数(按由小到大排列);比如:输入数组[9,1,9,7,5,13], 输出数组[7,9] 。原创 2013-10-10 21:18:02 · 3906 阅读 · 0 评论 -
整型数组处理算法(十二)请实现一个函数:最长顺子。[风林火山]
请实现一个函数:最长顺子;输入很多个整数(1<=数值<=13),返回其中可能组成的最长的一个顺子(顺子中数的个数代表顺的长度); 其中数字1也可以代表14;顺子包括单顺\双顺\3顺;单顺的定义是连续5个及以上连续的数,比如1,2,3,4,5、3,4,5,6,7,8和10,11,12,13,1等;双顺的定义是连续3个及以上连续的对(对:两个相同的数被称为对),比如1,1,2,2,3,3、4,4,5,5,6,6,7,7和11,11,12,12,13,13,1,1等;3顺的定义是连续2个及以上连续的3原创 2013-10-10 21:26:11 · 4742 阅读 · 0 评论 -
整型数组处理算法(十一)请实现一个函数:线段重叠。[风林火山]
请实现一个函数:线段重叠; 输入多个一维线段,求出这些线段相交的所有区域(也用线段表示); 一条线段用两个值表示(x0,x1), 其中x1>x0; 比如:输入线段数组[(2,4),(1.5,6),(0.5,3.5),(5,7),(7.5,9)], 输出线段数组[(1.5,4),(5,6)]原创 2013-10-10 21:22:42 · 3035 阅读 · 0 评论 -
整型数组处理算法(十)给定数组a[n],其中有超过一半的数为一个定值,找出这个数。[2014人人网笔试题]
给定数组a[n],其中有超过一半的数为一个定值,找出这个数。[2014人人网笔试题]原创 2013-10-03 14:04:20 · 3342 阅读 · 0 评论 -
人人网2014笔试算法题汇总
人人网2014笔试算法题汇总。原创 2013-10-01 00:17:27 · 5113 阅读 · 4 评论 -
暴风影音2014笔试算法题汇总
暴风影音2014笔试算法题汇总。原创 2013-10-01 00:18:04 · 4138 阅读 · 4 评论 -
华为2014笔试算法题汇总
华为2014笔试算法题汇总。原创 2013-10-01 00:20:50 · 5016 阅读 · 4 评论 -
百度2014笔试算法题汇总
百度2014笔试算法题汇总。原创 2013-10-01 00:21:25 · 6763 阅读 · 0 评论 -
美团网2014笔试算法题汇总
美团网2014笔试算法题汇总。原创 2013-10-01 00:21:54 · 5340 阅读 · 0 评论 -
整型数组处理算法(九)给定任意一个正整数,求比这个数大且最小的“不重复数”(性能优化)[2014百度笔试题]
在整型数组处理算法(九)给定任意一个正整数,求比这个数大且最小的“不重复数”[2014百度笔试题]有朋友提到如果输入1111111,效率非常低,确实是这样,诸如这样的还有10998765,,99876543,这个建议提的非常好,现在把算法做了优化,欢迎好心朋友不吝赐教,一起探讨。原创 2013-09-30 12:16:21 · 4550 阅读 · 8 评论 -
基础算法荟萃目录
基础算法荟萃链接快速通道,不断更新中。原创 2013-09-28 20:30:11 · 2136 阅读 · 0 评论 -
整型数组处理算法(九)给定任意一个正整数,求比这个数大且最小的“不重复数”[2014百度笔试题]
给定任意一个正整数,求比这个数大且最小的“不重复数”,“不重复数”的含义是相邻两位不相同,例如1101是重复数,1231是不重复数。原创 2013-09-30 00:02:01 · 4909 阅读 · 8 评论 -
字符串处理算法(四)现在一个给定字符串中寻找子串的功能(不能使用库函数)[2014百度笔试题]
完成一个函数,实现在一个给定字符串中寻找子串的功能(不能使用库函数)。原创 2013-09-30 00:01:18 · 5283 阅读 · 2 评论 -
整型数组处理算法(八)插入(+、-、空格)完成的等式:1 2 3 4 5 6 7 8 9=N[华为面试题]
有一个未完成的等式:1 2 3 4 5 6 7 8 9=N当给出整数N的具体值后,请你在2,3,4,5,6,7,8,9这8个数字的每一个前面,或插入运算符号“+”,或插入一个运算符号“-”,或不插入任何运算符号,使等式成立,并统计出能使等式成立的算式总数,若无解,则输出0。例如:取N为108时,共能写出15个不同的等式,以下就是其中的二个算式:1+23+4+56+7+8+9=108123-45+6+7+8+9=108输入一个数N输出一个数,表示能使等式成立的算式总数。原创 2013-09-29 21:21:51 · 9890 阅读 · 0 评论 -
整型数组处理算法(七)重排问题
给定含有n个元素的整型数组a,其中包括0元素和非0元素,对数组进行排序,要求:1. 排序后所有0元素在前,所有非零元素在后,且非零元素排序前后相对位置不变2. 不能使用额外存储空间例子如下:输入 0, 3, 0, 2, 1, 0, 0 输出 0, 0, 0, 0, 3, 2, 1原创 2013-09-28 01:16:43 · 3322 阅读 · 0 评论 -
整型数组处理算法(六)合并两个数组
给定含有m、n个元素的两个有序(非降序)整型数组a和b。合并两个数组中的元素到整型数组c,要求去除重复元素并保持c有序(非降序)。原创 2013-09-28 00:38:33 · 4221 阅读 · 0 评论 -
整型数组处理算法(五)求两个有序数组的共同元素
求两个有序数组的共同元素,比如数组a={1,2,3,8,9}和b={8,9,10},则输出output={8,9}。原创 2013-09-28 00:05:43 · 4870 阅读 · 0 评论 -
整型数组处理算法(四)求数组的最大值和最小值
求数组的最大值和最小值,返回值在maxValue和minValue。方法一:分治法。方法二:循环。原创 2013-09-27 23:33:25 · 5629 阅读 · 0 评论 -
整型数组处理算法(三)把一个数组里的所有元素,插入到另一个数组的指定位置
实现一个函数:把一个数组里的所有元素,插入到另一个数组的指定位置。比如:函数输入([2,5,3,4,7,0],2,[8,9,6]),输出[2,5,8,9,6,3,4,7,0]。原创 2013-09-26 23:15:56 · 5612 阅读 · 0 评论 -
字符串处理算法(三)按指定位置交换字符串两部分的位置
实现一个函数:按指定位置交换字符串两部分的位置比如:函数输入("abcde", 2) 输出"cdeab"原创 2013-09-26 20:42:56 · 4005 阅读 · 0 评论 -
整型数组处理算法(二)文件中有一组整数,要求排序后输出到另一个文件中
文件中有一组整数,要求排序后输出到另一个文件中,一次读取一个sizeof(int),然后往一个int*数组里写入,写入的时候就比较,进行排序。然后,在遍历数组,写到文件中。原创 2013-09-26 10:50:34 · 3974 阅读 · 0 评论 -
整型数组处理算法(一)按照正态分布来排列整型数组元素
给定一个数组input[],如果数组长度n为奇数,则将数组中最大的元素放到output[]数组最中间的位置,如果数组长度n为偶数,则将数组中最大的元素放到 output[] 数组中间两个位置偏右的那个位置上,然后再按从大到小的顺序,依次在第一个位置的两边,按照一左一右的顺序,依次存放剩下的数。这种处理后结果,如果按照元素的值表示一种分布的图形的话,那绘制后的图形应该是正态分布。原创 2013-09-24 09:12:24 · 4401 阅读 · 0 评论 -
字符串处理算法(二)逐个打印中文字符串
根据帖子:http://bbs.csdn.net/topics/390598291里的要求:C/C++ code?12char *str = "青年杂志(上半年)"; char str[] = "青年杂志(上半年)";如上两种原创 2013-09-24 00:04:54 · 3195 阅读 · 0 评论 -
字符串处理算法(一)检测输入字符串中是否包含连续的或者离散的test
检测输入字符串中是否包含连续的或者离散的test,如果出现连续的test则返回1,如果出现离散的test则返回2,如果没有出现test或者出现的次数和顺序不正确,则返回0。原创 2013-09-23 00:50:03 · 2268 阅读 · 0 评论 -
数组全排列算法(二)整型数组全排列——递归算法
算法题:实现一个整型数组的全排列,void perm(int list[], int k, int m)参数说明:list,数组;k开始位置,m个数。用递归算法实现。原创 2013-09-22 12:43:31 · 2903 阅读 · 0 评论 -
数组全排列算法(一)字符串数组全排列——逐个追加组合算法
算法题:输入一个字符串,输出该字符串中所有字母的全排列。C++函数原型: void Print(const char *str),本文采用逐个追加组合算法实现。原创 2013-09-22 04:30:54 · 2207 阅读 · 0 评论