C++
文章平均质量分 57
究极死胖兽
这个作者很懒,什么都没留下…
展开
-
【华为练习题】求麻将清一色和牌问题
【华为练习题】求麻将清一色和牌问题题目题目描述:清一色是麻将番种之一,指由一种花色的序数牌组成的和牌.数字1-9,每个数字最多有4张牌我们不考虑具体花色,我们只看数字组合。刻子:三张一样的牌;如: 111, 222, 333, …, 999顺子:三张连续的牌;如: 123, 234, 345, …, 789对子:两张相同的牌;如: 11, 22, 33, …, 99需要实现一个程...原创 2019-02-14 16:04:17 · 7669 阅读 · 0 评论 -
华为上机题汇总(九)
华为上机题汇总(九)注:编译环境为Visual Studio 2012,答案仅供参考。目录华为上机题汇总九目录第四十一题第四十二题第四十三题第四十四题第四十五题第四十一题41.输入m个字符串 和一个整数n, 把字符串M化成以N为单位的段,不足的位数用0补齐。 如 n=8 m=9 , 123456789划分为:12345678 90000000 123化为 :12300000#in原创 2016-08-13 12:53:40 · 775 阅读 · 0 评论 -
华为上机题汇总(八)
华为上机题汇总(八)注:编译环境为Visual Studio 2012,答案仅供参考。目录华为上机题汇总八目录第三十六题第三十七题第三十八题第三十九题第四十题第三十六题36.输入一行数字:123 423 5645 875 186523 在输入第二行:23 将第一行中含有第二行中“23”的数输出并排序 结果即:123 423 186523#include <iostream>#in原创 2016-08-12 16:26:05 · 1150 阅读 · 0 评论 -
华为上机题汇总(七)
华为上机题汇总(七)注:编译环境为Visual Studio 2012,答案仅供参考。目录华为上机题汇总七目录第三十一题第三十二题第三十三题第三十四题第三十五题第三十一题已知2条地铁线路,其中A为环线,B为东西向线路,线路都是双向的。经过的站点名分别如下,两条线交叉的换乘点用T1、T2表示。编写程序,任意输入两个站点名称,输出乘坐地铁最少需要经过的车站数量(含输入的起点和终点,换乘站点只原创 2016-08-12 13:06:39 · 890 阅读 · 0 评论 -
【华为练习题】乒乓球赛制
【华为练习题】乒乓球赛制题目国际乒联现在主席沙拉拉自从上任以来就立志于推行一系列改革,以推动乒乓球运动在全球的普及。其中11分制改革引起了很大的争议,有一部分球员因为无法适应新规则只能选择退役。华华就是其中一位,他退役之后走上了乒乓球研究工作,意图弄明白11分制和21分制对选手的不同影响。在开展他的研究之前,他首先需要对他多年比赛的统计数据进行一些分析,所以需要你的帮忙。华华通过以下方式进行分析,首原创 2016-08-24 14:46:41 · 1520 阅读 · 0 评论 -
【华为练习题】判断点是否在三角形中
【华为练习题】判断点是否在三角形中题目一个二维坐标系中(100*100,每一维0~99),已知三角形三个顶点的坐标A、B、C,判断坐标系中的任意点:P,是否在三角形内(在三角形边上也认为在三角形内)请实现如下接口/* 功能:点是否在三角形内输入:三角形三顶点坐标:A、B、C,以及待确认的点:P输出:无返回:在三角形内返回true,否则返回false*/public static boolea原创 2016-08-24 13:49:21 · 1255 阅读 · 0 评论 -
华为上机题汇总(六)
华为上机题汇总(六)注:编译环境为Visual Studio 2012,答案仅供参考。目录华为上机题汇总六目录第二十六题第二十七题第二十八题第二十九题第三十题第二十六题26.一副牌中发五张扑克牌给你:让你判断数字的组成: 有以下几种情况: 1:四条:即四张一样数值的牌(牌均不论花色)2:三条带 一对 3:三条带两张不相同数值的牌 4:两对 5:顺子 包括 10,J,原创 2016-08-11 21:19:32 · 943 阅读 · 0 评论 -
【华为练习题】 爬梯问题
【华为练习题】 爬梯问题题目一个楼梯有N阶,从下往上走,一步可以走一阶,也可以走两阶,有多少种走法?例如3阶楼梯有3种走法:1、1、11、22、1输入样例:3返回值样例:3分析要爬上第N阶楼梯,有两种情况,从第N-1阶走一步或从第N-2阶走两步,得到递推式f(n)=f(n-1)+f(n-2)解答#include <iostream>using namespace std;int Stairs(in原创 2016-08-23 20:13:12 · 1327 阅读 · 0 评论 -
【华为练习题】字符出现频率
【华为练习题】字符出现频率题目描述:写出一个程序,输出基准字符串中统计指定字符出现的频率字符串仅包括英文大小写字母和空格、逗号、点号小数点后保留2位有效数字,第三位四舍五入举例:输入:wo shi, yi zhi.xiao xiao niao ‘ ’(空格) 输出:0.17接口说明:/* 功能: 输入的基准字符串中统计指定字符出现的频率 字符串仅包括英文大小写字原创 2016-08-23 20:05:04 · 858 阅读 · 0 评论 -
【华为练习题】二叉树遍历
【华为练习题】二叉树遍历题目二叉树遍历 描述: 二叉树的前序、中序、后序遍历的定义: 前序遍历:对任一子树,先访问跟,然后遍历其左子树,最后遍历其右子树; 中序遍历:对任一子树,先遍历其左子树,然后访问根,最后遍历其右子树; 后序遍历:对任一子树,先遍历其左子树,然后遍历其右子树,最后访问根。 给定一棵二叉树的前序遍历和中序遍历,求其后序遍历(提示:给定前序遍历与中序遍历能够唯一确原创 2016-09-13 23:28:05 · 3346 阅读 · 0 评论 -
华为上机题汇总(五)
华为上机题汇总(五)注:编译环境为Visual Studio 2012,答案仅供参考。目录华为上机题汇总五目录第二十一题第二十二题第二十三题第二十四题第二十五题第二十一题21.通过键盘输入100以内正整数的加、减运算式,请编写一个程序输出运算结果字符串。 输入字符串的格式为:“操作数1 运算符 操作数2”,“操作数”与“运算符”之间以一个空格隔开。补充说明: 1. 操作数为正整数,不原创 2016-08-11 14:55:19 · 827 阅读 · 0 评论 -
【华为练习题】十六进制字符串形式转为内存值形式
【华为练习题】十六进制字符串形式转为内存值形式题目功能:将十六进制字符串形式内容转为内存值形式(注:pBuffer的内存申请由调用者保证)输入:szHexText:十六进制字符串形式,如: “6566”输出:dataOutput,其中:内存值形式Buffer,即内存的{0x65, 0x66}返回:返回转换成功的buffer的有效字节数解答#include <iostream>#include <s原创 2016-08-23 14:01:28 · 1732 阅读 · 0 评论 -
【华为练习题】整数分隔
【华为练习题】整数分隔题目整数分隔描述: 一个整数总可以拆分为2的幂的和,例如:7=1+2+47=1+2+2+27=1+1+1+47=1+1+1+2+27=1+1+1+1+1+27=1+1+1+1+1+1+1总共有六种不同的拆分方式。再比如:4可以拆分成:4 = 4,4 = 1 + 1 + 1 + 1,4 = 2 + 2,4=1+1+2。用f(n)表示n的不同拆分的种数,例如f(7)=6.要求编写原创 2016-09-13 17:06:36 · 687 阅读 · 0 评论 -
【华为练习题】识别IP地址与掩码(中级)
【华为练习题】识别IP地址与掩码(中级)题目识别有效的IP地址和掩码并进行分类统计 描述: 请解析IP地址和对应的掩码,进行分类识别。要求按照A/B/C/D/E类地址归类,不合法的地址和掩码单独归类。所有的IP地址划分为 A,B,C,D,E五类A类地址1.0.0.0~126.255.255.255;B类地址128.0.0.0~191.255.255.255;C类地址192.0.0.0~223.25原创 2016-09-13 16:42:49 · 913 阅读 · 0 评论 -
【华为练习题】大数阶乘
【华为练习题】大数阶乘题目计算阶乘n!是一件可怕的事情,因为当n并不是很大时,n!将是一个很大的值。例如13! = 6227020800,已经超过了我们常用的unsigned int类型的取值范围。请设计一个程序,使其可以计算100以内的数的阶乘,结果用字符串的形式输出解答#include <iostream>#include <string>#include <vector>using na原创 2016-09-13 12:06:33 · 776 阅读 · 0 评论 -
华为上机题汇总(十)
华为上机题汇总(十)注:编译环境为Visual Studio 2012,答案仅供参考。目录华为上机题汇总十目录第四十六题第四十七题第四十八题第四十九题第五十题第四十六题46.在给定字符串中找出单词( “单词”由大写字母和小写字母字符构成,其他非字母字符视为单词的间隔,如空格、问号、数字等等;另外单个字母不算单词);找到单词后,按照长度进行降序排序,(排序时如果长度相同,则按出现的顺序进行原创 2016-08-13 16:08:35 · 951 阅读 · 0 评论 -
华为上机题汇总(十一)
华为上机题汇总(十一)注:编译环境为Visual Studio 2012,答案仅供参考。目录华为上机题汇总十一目录第五十一题第五十二题第五十三题第五十四题第五十五题第五十一题51.子串分离 题目描述: 通过键盘输入任意一个字符串序列,字符串可能包含多个子串,子串以空格分隔。请编写一 个程序,自动分离出各个子串,并使用’,’将其分隔,并且在最后也补充一个’,’并将子 串存储。原创 2016-08-14 13:27:50 · 1014 阅读 · 0 评论 -
华为上机题汇总(十二)
华为上机题汇总(十二)注:编译环境为Visual Studio 2012,答案仅供参考。目录华为上机题汇总十二目录第五十六题第五十七题第五十八题第五十九题第六十题第五十六题56.在中国,形容夫妻恩爱的词汇中,大家用的比较多的就是“夫妻相”。所谓“夫妻相”,就是两个人看上去比较般配,长相、身材等某些方面有一定的相似度。本题则另辟蹊径,从人的姓名维度,以字母重复个数来寻找最具“夫妻相”的人。原创 2016-08-14 17:41:09 · 1299 阅读 · 0 评论 -
趣味ACM题 圣骑士的斩杀
趣味ACM题 圣骑士的斩杀最近一张山东省的ACM试卷在网上广为流传,道题目是根据暴雪著名游戏炉石传说来设计的,是计算在一局游戏中死鱼骑是否能一回合斩杀对手。下面是我个人的解答,如有不严谨之处,欢迎指正!目录趣味ACM题 圣骑士的斩杀目录题目描述题目分析示例代码运行结果题目描述题目描述较长,没玩过炉石传说的小伙伴可能第一时间看不太懂,不过没...原创 2016-06-08 14:53:15 · 1859 阅读 · 1 评论 -
【程序员面试金典】链表分割
【程序员面试金典】链表分割题目编写代码,以给定值x为基准将链表分割成两部分,所有小于x的结点排在大于或等于x的结点之前 给定一个链表的头指针 ListNode* pHead,请返回重新排列后的链表的头指针。注意:分割以后保持原来的数据顺序不变。分析头结点可能小于x也可能大于等于x,也有可能出现链表中所有结点都小于x或大于等于x的情况。为了减少各种特殊情况的判断,可以创建两个新的链表,分别存放小于x原创 2016-11-16 11:55:45 · 681 阅读 · 0 评论 -
【程序员面试金典】清除行列
【程序员面试金典】清除行列题目请编写一个算法,若N阶方阵中某个元素为0,则将其所在的行与列清零。 给定一个N阶方阵int[][](C++中为vector>)mat和矩阵的阶数n,请返回完成操作后的int[][]方阵(C++中为vector>),保证n小于等于300,矩阵中的元素为int范围内。测试样例: [[1,2,3],[0,1,2],[0,0,1]] 返回:[[0,0,3],[0,0,0]原创 2016-10-06 19:50:25 · 859 阅读 · 0 评论 -
【程序员面试金典】像素翻转
【程序员面试金典】像素翻转题目有一副由NxN矩阵表示的图像,这里每个像素用一个int表示,请编写一个算法,在不占用额外内存空间的情况下(即不使用缓存矩阵),将图像顺时针旋转90度。 给定一个NxN的矩阵,和矩阵的阶数N,请返回旋转后的NxN矩阵,保证N小于等于500,图像元素小于等于256。 测试样例: [[1,2,3],[4,5,6],[7,8,9]],3 返回:[[7,4,1],[8,5原创 2016-09-27 13:55:35 · 1026 阅读 · 0 评论 -
【程序员面试金典】基本字符串压缩
【程序员面试金典】基本字符串压缩题目利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能。比如,字符串“aabcccccaaa”经压缩会变成“a2b1c5a3”。若压缩后的字符串没有变短,则返回原先的字符串。 给定一个string iniString为待压缩的串(长度小于等于10000),保证串内字符均由大小写英文字母组成,返回一个string,为所求的压缩后或未变化的串。 测试样例原创 2016-09-27 13:50:47 · 1578 阅读 · 0 评论 -
【程序员面试金典】空格替换
【程序员面试金典】空格替换题目题目描述请编写一个方法,将字符串中的空格全部替换为“%20”。假定该字符串有足够的空间存放新增的字符,并且知道字符串的真实长度(小于等于1000),同时保证字符串由大小写的英文字母组成。 给定一个string iniString 为原始的串,以及串的长度 int len, 返回替换后的string。 测试样例: “Mr John Smith”,13 返回:”Mr原创 2016-09-27 13:48:10 · 899 阅读 · 0 评论 -
【程序员面试金典】确定两串乱序同构
【程序员面试金典】确定两串乱序同构题目给定两个字符串,请编写程序,确定其中一个字符串的字符重新排列后,能否变成另一个字符串。这里规定大小写为不同字符,且考虑字符串重点空格。 给定一个string stringA和一个string stringB,请返回一个bool,代表两串是否重新排列后可相同。保证两串的长度都小于等于5000。 测试样例: “This is nowcoder”,”is Thi原创 2016-09-24 15:56:27 · 912 阅读 · 0 评论 -
【程序员面试金典】原串翻转
【程序员面试金典】原串翻转题目请实现一个算法,在不使用额外数据结构和储存空间的情况下,翻转一个给定的字符串(可以使用单个过程变量)。 给定一个string iniString,请返回一个string,为翻转后的字符串。保证字符串的长度小于等于5000。 测试样例: “This is nowcoder” 返回:”redocwon si sihT”解答 string reverseStri原创 2016-09-24 15:52:30 · 923 阅读 · 0 评论 -
【程序员面试金典】确定字符串互异
【程序员面试金典】确定字符串互异题目请实现一个算法,确定一个字符串的所有字符是否全都不同。(进阶:要求不允许使用额外的存储结构)给定一个string iniString,请返回一个bool值,True代表所有字符全都不同,False代表存在相同的字符。保证字符串中的字符为ASCII字符。字符串的长度小于等于3000。 测试样例: “aeiou” 返回:True “BarackObama”原创 2016-09-24 15:40:20 · 992 阅读 · 0 评论 -
【程序员面试金典】访问单个节点的删除
【程序员面试金典】访问单个节点的删除题目实现一个算法,删除单向链表中间的某个结点,假定你只能访问该结点。 给定带删除的节点,请执行删除操作,若该节点为尾节点,返回false,否则返回true分析复制下一个结点的内容到当前结点,再删除下一个结点,如果该节点为尾结点,则无解。解答struct ListNode { int val; struct ListNode *next;原创 2016-10-10 13:41:21 · 620 阅读 · 0 评论 -
【程序员面试金典】链表中倒数第k个结点
【程序员面试金典】链表中倒数第k个结点题目输入一个链表,输出该链表中倒数第k个结点。分析使用两个指针,前面的指针先移动k步,再同时移动两个指针,但前面的指针抵达表尾时输出后面的指针。注意链表为空或链表长度小于k的情况。解答struct ListNode { int val; struct ListNode *next; ListNode(int x) :原创 2016-10-10 13:37:43 · 522 阅读 · 0 评论 -
【程序员面试金典】翻转子串
【程序员面试金典】翻转子串题目假定我们都知道非常高效的算法来检查一个单词是否为其他字符串的子串。请将这个算法编写成一个函数,给定两个字符串s1和s2,请编写代码检查s2是否为s1旋转而成,要求只能调用一次检查子串的函数。 给定两个字符串s1,s2,请返回bool值代表s2是否由s1旋转而成。字符串中字符为英文字母和空格,区分大小写,字符串长度小于等于1000。 测试样例: “Hello wor原创 2016-10-10 13:32:38 · 580 阅读 · 0 评论 -
华为上机题汇总(十三)
华为上机题汇总(十三)注:编译环境为Visual Studio 2012,答案仅供参考。目录华为上机题汇总十三目录第六十一题第六十二题第六十三题第六十四题第六十五题第六十一题61.给一个数组,输出数组里超出所有元素平均值的元素的个数。比如:1、2、3、4、5,输出3.#include <iostream>using namespace std;int overAvg(int a[],i原创 2016-08-15 12:28:52 · 933 阅读 · 0 评论 -
【华为练习题】约瑟夫问题拓展
【华为练习题】约瑟夫问题拓展题目功能: 约瑟夫问题众所周知,原始的约瑟夫问题是这样的:有n个人,编号为1,2,…, n,站成一圈, 每次第m个将会被处决,直到只剩下一个人。约瑟夫通过给出m来决定赦免其中的一个人。 例如当n=6,m=5时,5,4,6,2,3将会被依次处决,而1将会幸免。假如有k个好人,和k个坏人,所有人站成一圈,前k个人是好人,后k个人是坏人, 编写程序计算一个最小的m,原创 2016-08-23 11:20:08 · 3790 阅读 · 0 评论 -
【华为练习题】用两个栈来模拟队列(中级)
【华为练习题】用两个栈来模拟队列(中级)题目栈的特点是后进先出,队列的特点是先进先出。所以,用两个栈S1和S2模拟一个队列时, 要求两个栈S1和S2的长度都是5。 要求实现以下函数: enQueue 将元素value插入队列,若入队列成功返回true,否则返回false deQueue 从队列中取出一个元素放入value,若出队列成功返回true,否则返回false。 isEmptyQue原创 2016-08-23 10:42:07 · 1632 阅读 · 0 评论 -
【华为练习题】 最后一个单词的长度(初级)
【华为练习题】 最后一个单词的长度(初级)题目描述: 计算字符串最后一个单词的长度,单词以空格隔开。题目类别: 字符串 输入: 一行字符串,长度小于128。 输出: 整数N,最后一个单词的长度。 样例输入: hello world 样例输出: 5解答#include <iostream>#include <string>using namespace std;int las原创 2016-08-22 22:28:14 · 644 阅读 · 0 评论 -
华为上机题汇总(十八)
华为上机题汇总(十八)注:编译环境为Visual Studio 2012,答案仅供参考。目录华为上机题汇总十八目录第八十六题第八十七题第八十八题第八十九题第九十题第八十六题86.合并输入的两个整形数组并去掉重复的数字按升序输出; 案例输入:3 1 2 5 -10 3 2 案例输出:-10 1 2 3 5#include <iostream>#include <vector>原创 2016-08-17 18:03:29 · 903 阅读 · 0 评论 -
华为上机题汇总(十七)
华为上机题汇总(十七)注:编译环境为Visual Studio 2012,答案仅供参考。目录华为上机题汇总十七目录第八十一题第八十二题第八十三题第八十四题第八十五题第八十一题81.对一个二维的整数数组,对指定列进行升序排序,返回排列后的数组 例如: 3 2 2 6 3 3 4 1 1 2 1 3 3 4 6#include <iostream>u原创 2016-08-17 12:01:51 · 765 阅读 · 0 评论 -
华为上机题汇总(十六)
华为上机题汇总(十六)注:编译环境为Visual Studio 2012,答案仅供参考。目录华为上机题汇总十六目录第七十六题第七十七题第七十八题第七十九题第八十题第七十六题消除类游戏很多,一般横、竖、斜有连续三个及以上相同就可以消除,为降低难度,本题只需要考虑一维的横消除即可, 即在给定的一组数字中(个,用例保证只有个),如果有连续三个及以上的数字相同,则将这些数字消除, 同时如果前原创 2016-08-16 16:17:47 · 1083 阅读 · 0 评论 -
华为上机题汇总(十四)
华为上机题汇总(十四)注:编译环境为Visual Studio 2012,答案仅供参考。目录华为上机题汇总十四目录第六十六题第六十七题第六十八题第六十九题第七十题第六十六题66.问题描述 股票是一种有价证券,是股份公司为筹集资金发给投资者作为公司资本部分所有权的凭证,成为股东以此获得股息(股利),并分享公司成长或交易市场波动带来的利润;但也要共同承担公司运作错误所带来的风险。南邮华为俱原创 2016-08-15 17:18:53 · 1293 阅读 · 0 评论 -
[剑指Offer] 第4章课后题详解
[剑指Offer] 第4章课后题详解目录剑指Offer 第4章课后题详解目录二叉树的镜像分析解法拓展判断前序遍历分析解法拓展字符的组合分析解答正方体的顶点分析解法8个皇后分析解法二叉树的镜像本题为《剑指Offer》“面试题19:二叉树的镜像”一节中的“本题拓展”。请完成一个函数,输入一个二叉树,该函数输出它的镜像,要求使用循环的方法,不能用递归。二叉树节点定义如下原创 2016-06-23 18:39:21 · 1753 阅读 · 1 评论 -
[剑指Offer] 第3章课后题详解
[剑指Offer] 第3章课后题详解目录剑指Offer 第3章课后题详解目录大数加法分析解法优化链表的中间节点分析解法环形链表分析解法反转链表分析解法大数加法本题为《剑指Offer》“面试题12:打印1到最大的n位数”一节中的“相关题目”。定义一个函数,在该函数中可以实现任意两个整数的加法。分析由于没有限定输入两个数的大小范围,所以需要把它当做大数问题来处理。大数无法用i原创 2016-06-22 12:51:16 · 1554 阅读 · 0 评论