
练习题库C/C++
文章平均质量分 68
John__xs
刚入门的菜鸟级程序员
展开
-
剑指offer 面试题 (二进制中 1 的个数)(4)
# 面试题: 求一个整数二进制中 1 的个数?/*题目: 请实现一个函数,输入一个整数,输出该数二进制表示中 1 的个数。例如把 9 表示为二进制是 1001, 有两个 1;因此,如果输入 9,则输出 2;*/题目分析: 学过计算机机基础的同学应该都知道,在计算机中的存储都是以二进制形式存在的! 那么原创 2016-05-10 16:12:45 · 543 阅读 · 0 评论 -
剑指offer <从1 到 n 整数中1 出现的次数>(8)
# 面试题:从1 到 n 整数中1 出现的次数/*题目: 输入一个整数 n,求从1 到 n这n个整数的十进制表示中1 出现的次数。 例如:输入12,从1 到 12 这些整数中包含 1 的数字有1 ,10, 11 和12, 1一共出现了5次。*/# 直接上代码;@ 首先想到的简单的把每一个数中的 1 的个数找出来,然后累加实原创 2016-05-18 19:52:16 · 444 阅读 · 0 评论 -
剑指offer 面试题 (斐波那契)(3)
面试题: 求解斐波那契数列 /*题目:写一个函数,输入n,求斐波那契(Fibonacci)数列的第n项。斐波那契数列的定义如下: 0 n = 0; f(n) = 1 n = 1; f(n-1) + f(n-2原创 2016-05-09 14:07:29 · 1374 阅读 · 0 评论 -
剑指offer 面试题(二维数组中的查找) (2)
面试题: 二维数组中的查找 /*题目: 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该数。 */ps:(其实前段时间我就做过这道题,今天看到了,觉得还是有点生,那就再来一次吧)题目分析: 在分析这个问题原创 2016-05-08 15:41:29 · 1116 阅读 · 0 评论 -
字符串的旋转问题
# 字符串的旋转问题@讨论两方面:1. 旋转字符串 2. 判断字符串是否由另一个字符串旋转而来(一) 旋转字符串/*实现对字符串的左旋和右旋*/# 分析: 所谓左旋右旋其实就是移动字符;例如:将abcdef左旋两位得到:cdefab原创 2016-05-29 19:18:31 · 985 阅读 · 0 评论 -
经典例题:交换两个数
# 交换两个整数的值/*题目: 包装一个函数,实现交换两个整数的功能,注意:需要以传参的形式去调用函数;*/# 这道题看上去是不是很简单! 如果不用包装函数很多人立马就能写出下面的函数;int main(){ int a = 2; int b = 3; int tmp = 0; printf("a = %d b = %d\n原创 2016-05-26 15:46:47 · 2161 阅读 · 1 评论 -
位运算之只出现一次的的数字
****************位运算系列之数组中只出现一次的数字******************//题目(1):在一个数组中只有一个数字出现一次,其他数字都是成对出现的!让你找出这个只出现一次的数字,//其实,这也叫缺失的数字,用来找成对数组中里有一对数字缺失了一个数字的数组成员!/* 那么,现在先来分析一下,一般情况下,我们最先想到的原创 2016-06-06 11:15:02 · 1970 阅读 · 0 评论 -
位运算之指定位操作
# 功能: 实现对一个8Bit数据(unsigned char类型)的指定位(例如第n位)的置0或者置1操作,并保持其他位不变。@ 函数原型:unsigned int _operator_bit(unsigned char data, int pos, int flag);@题目分析:利用对应位的按位或和按位与操作进行实现;代码实现:#i原创 2016-05-30 13:28:50 · 5780 阅读 · 0 评论 -
报数退出问题
问题: 有n人围成一圈,顺序排号。从第1个人开始报数(从1到3报数),凡报到3的人退出圈子,问最后留下的是原来的第几号的那位。分析: 看到这道题的时候我不由自主的想到了约瑟夫环,想到了用链表去解决,但是,细想之下,时间仓促,因为是在答题,用链表的话有点小题大作,那么便有了下面数组的解决方法!首先,有N个人,创建一个大小为N的数组,但是如果N是从键盘接收的值,那么就得提前给定一个大小合适的值,这也原创 2016-10-31 22:51:31 · 4707 阅读 · 6 评论 -
字符串转化为对应的整数 (9)
# 面试题: 把字符串转化为整数/*题目: 把字符串转化为整数,例如: 将字符串“1234” 转化为整数 1234;题目分析: 将字符串转化为对应的整数,看是没什么难度的问题,相信很多同学都能立马写出下面的代码:*/#include#include#include#include#includevoid StrT原创 2016-05-19 17:14:07 · 2375 阅读 · 3 评论 -
面试题 <数组中出现超过一半的数字>(7)
# 面试题: 数组中出现超过一半 的数字/*题目: 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。 例如输入一个长度为9 的数组{1,2,3,2,2,2,5,4,2}。 由于数字2 在这个数组中出现了 5次,超过了数组长度的一般,因此输出 5。*/# 题目分析: 看到这道题,相信大多数人和我一样想到的是,将数组中每一个原创 2016-05-16 14:07:36 · 559 阅读 · 0 评论 -
剑指offer 面试题(打印1到n最大的n位整数)(6)
# 面试题: 打印1到n最大的n位整数/*题目: 输入数字 n,按顺序打印出从 1 最大的 n位十进制数字。 比如:3,则打印出 1, 2 ,3 一直到最大的三位数 999;*/# 注: 为了方便起见;在开头将头文件和主函数列出,后面只列算法; @ 方便起见,代码文件以.cpp为格式; 代码中用到 bool型返回值原创 2016-05-12 16:41:22 · 1113 阅读 · 1 评论 -
面试题 <丑数>(10)
# 面试题: 丑数/*题目: 我们把只包含因子 2,3和5的数称为丑数。求按从小到大的顺序的第1500个丑数,例如 6,8 都是丑数,但是14 不是,因为它包含因子 7. 习惯上我们把1 当作第一个丑数。*/# 题目分析: // 所谓丑数就是能连续被 2,3,5 整除最后得到1 的整数;原创 2016-05-24 09:17:17 · 891 阅读 · 1 评论 -
面试题 <第一个只出现一次的字符>(11)
/*题目: 在字符串中找出第一个只出现一次的字符,如果输入“abaccdeff”,则输出 b。*/# 这里直接列出这道题的两种解法:方法一: 普通方法//一般方法//所谓一般方法就是一遍又一遍的遍历,这种方法比较传统,但是效率不高;char Once_Num1(const char *str){ const char *pt原创 2016-05-24 20:09:59 · 1002 阅读 · 0 评论 -
剑指offer 面试题(数值的整数次方)(5)
# 面试题:数值的整数次方/*题目: 实现函数 double Power(double base, int exponcent).求base 的exponcent 次方。不得使用库函数,同时不需要考虑大数问题。*/题目分析: 乍一看,这不就是我们经常用的 pow 函数嘛! 那还不简单,于原创 2016-05-11 16:24:22 · 606 阅读 · 0 评论 -
简单的递归算法和简单的printf函数模拟
简单的递归算法和简单的printf函数模拟!原创 2016-04-14 17:39:21 · 940 阅读 · 0 评论 -
简单C三道!
简单小题三道!原创 2016-04-11 13:07:20 · 539 阅读 · 0 评论 -
蓝翔杯 小酒两杯!
简单也不简单原创 2016-03-23 18:35:07 · 675 阅读 · 0 评论 -
简单也不简单
1. 输出一个整数的每一位。#include#includevoid out(int num){ if(num==0)return ; out(num/10); printf("%d\t",num%10);}int main(){ int num = 1234; out(num); system("pause"); return 0;}2. 计算1/1-1/2+1/3-1/4+1/5 …… +原创 2016-03-22 21:04:48 · 440 阅读 · 0 评论 -
面试题<数组中的逆序对>(12)
# 面试题: 数组中的逆序对/*//题目: 在数组中的两个数字如果前面一个数字大于后面的数字,则////这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。////例如 {5,4,3,2,1}中的逆序对数为10; */这道题比较简单,我就直接上代码了,不过方法不是最简单的;#include#includeint R原创 2016-05-26 15:03:16 · 766 阅读 · 0 评论 -
CVTE笔试题---字符串的全排列
今天笔了cvte的实习生在线笔试题,一个感觉,基础很重要,如果没有扎实的基础,全是不定项的选择题,真的都是致命伤;下面我就编程题–字符串的全排列进行总结;当然,这道题在剑指offer上就有,面试经常出,我以前也做过,但是时间长了,不太熟了,做的时候挺吃力,就在这里总结一下吧!题目: 输入一个字符串,打印该字符串中字符的所有排列,例如输入abc,则打印出abc,acb,bac,bca,cab,cba。原创 2017-03-18 22:49:11 · 995 阅读 · 0 评论