08 2014 档案

IT公司100题-28-整数的二进制表示中1的个数
摘要:问题描述:输入一个整数n,求n的二进制表示中,一共有多少个1。例如n=8,二进制表示为00001000,二进制表示中有1个1。分析:如果一个数n不为0,那么n-1的二进制表示,与n的二进制表示相比,n的二进制表示最右边的1变为0,而最右边的1所对应的0全部变为1。其余位不受影响。例如:n的二进制表示... 阅读全文

posted @ 2014-08-28 22:23 醉清风JM 阅读(228) 评论(0) 推荐(0) 编辑

IT公司100题-27-跳台阶问题
摘要:问题描述:一个台阶总共有n阶,一次可以跳1级或者2级。求总共有多少种跳法。分析:用f(n)表示n阶台阶总共有多少种跳法。n阶台阶,第一可以选择跳1阶或者2阶,则f(n) = f(n-1) + f(n-2)。问题转化为斐波那契数列问题。/ 1 n=1f(n)= 2n=2\f(n-1)+(f-2)n>2 阅读全文

posted @ 2014-08-28 21:52 醉清风JM 阅读(209) 评论(0) 推荐(0) 编辑

IT公司100题-tencent-打印所有高度为2的路径
摘要:问题描述:打印所有到叶子节点长度为2的路径 10 / \ 6 16 /\ / \ 4 8 14 18 / \ / \ \2 5 12 15 20 / 11打印:[10 6 8][6 4 2][6 4 5][16 14 15][16 18 20][14 12 11]分析:1, ... 阅读全文

posted @ 2014-08-28 21:49 醉清风JM 阅读(204) 评论(0) 推荐(0) 编辑

测试 - 如何测试一部电梯
摘要:转自:http://blog.csdn.net/txx9010/article/details/8659051需求测试:查看电梯使用说明书、安全说明书等界面测试:查看电梯外观功能测试:1.测试电梯能否实现正常的上升和下降功能。2.电梯的按钮是否都可以使用。3.电梯门的打开,关闭是否正常。4.报警装置... 阅读全文

posted @ 2014-08-23 09:25 醉清风JM 阅读(1287) 评论(0) 推荐(0) 编辑

Objective-C 与 C++ 的异同
摘要:stackflow 上有同学提问"C++ 与 Objective-C 有什么异同?"楼下的提供的两个资料挺不错的. 其一是: Pierre Chatelier 写的 <From C++ to Objective-C version 2.1 en> 下载链接:http://pierre.chachat 阅读全文

posted @ 2014-08-22 09:47 醉清风JM 阅读(447) 评论(0) 推荐(0) 编辑

IT公司100题-26-左旋转字符串
摘要:问题描述:给定字符串和左旋的字符数,写程序实现字符串的左旋操作。例如对于字符串”12345678″, 左旋转4个字符后,变成”56781234″。要求时间复杂度为O(n),空间复杂度O(1)。分析:假设字符串表示为XY,X表示需要左旋的部分,左旋后字符串表示为YX。根据公式:代码实现: 1 // 2... 阅读全文

posted @ 2014-08-21 16:46 醉清风JM 阅读(196) 评论(0) 推荐(0) 编辑

IT公司100题-25-求字符串中的最长数字串
摘要:问题描述:实现一个函数,求出字符串中的连续最长数字串。例如输入”12345cbf3456″,输出”12345″。函数原型为:voidconti_num_max(constchar*src,char*dest);dest保存最长数字串,返回void。分析:遍历一遍字符串,记录起始位置和长度即可。代码实... 阅读全文

posted @ 2014-08-21 16:35 醉清风JM 阅读(191) 评论(0) 推荐(0) 编辑

C-字符串常量
摘要:相同的字符串常量是共享的,而且是不可写的。 1 #include 2 using namespace std; 3 4 char *string1, *string2; 5 6 int main() { 7 string1 = "abcd"; string2 = "abcd"; 8 ... 阅读全文

posted @ 2014-08-18 21:15 醉清风JM 阅读(163) 评论(0) 推荐(0) 编辑

C-union的使用
摘要:union有两个作用:1,节约空间,如果一个struct存在两个互斥的变量,则可以把这个struct变成union2,将同一个内存作为多种解释代码: 1 #include 2 using namespace std; 3 4 //作用1,如果只是存a,20000000 个s_tag节约20M空间... 阅读全文

posted @ 2014-08-18 21:01 醉清风JM 阅读(231) 评论(0) 推荐(0) 编辑

IT公司100题-21-输入n和m,和等于m
摘要:问题描述:输入两个整数n 和m,从数列1,2,3,…,n 中随意取几个数,使其和等于m,将所有可能的组合都打印出来。分析:利用递归的思路,对于1,2,3,…,n 中的任意一个数,要么选,要么不选。递归下去,直到其和等于m时,输出。解答: 1 // 21.cc 2 #include 3 #inclu... 阅读全文

posted @ 2014-08-18 16:46 醉清风JM 阅读(214) 评论(0) 推荐(0) 编辑

STL-算法
摘要:#include 1. max_element(v.begin(), v.end()); 注意,所有的区间全部是半开区间,如果数组包含20~40,通过find找出25,和35的positon,但是max_element(pos25, pos35)得到的是34.2. min_element(v.be... 阅读全文

posted @ 2014-08-18 13:17 醉清风JM 阅读(199) 评论(0) 推荐(0) 编辑

C- printf的使用
摘要:ASC C之后引入的一个特性是,相邻的字符可以被自动连接 1 /* printf.cc 2 * 2014/09/02 update 3 */ 4 #include 5 using namespace std; 6 7 int main() { 8 printf("abcd" 9 ... 阅读全文

posted @ 2014-08-16 09:18 醉清风JM 阅读(258) 评论(0) 推荐(0) 编辑

Linux - gcc和g++的区别
摘要:一般linux系统都自带了gcc编译器的,你可以用你的安装光盘去安装,如果你是觉得自带的gcc版本太低了,可以去gcc的官方网站可以下载到,编译需要很长的时间,如果你只编译C或者C++可以只下载gcc-g++和gcc-core,这样编译的可能要快一些,晚上睡觉前,你可以编译,早上就可以编译好了,我一... 阅读全文

posted @ 2014-08-11 22:49 醉清风JM 阅读(652) 评论(0) 推荐(0) 编辑

IT公司100题-19-求Fibonacci数列
摘要:问题描述:定义Fibonacci数列的定义如下:/ 0 n=0f(n)=1 n=1\ f(n-1)+f(n-2)n=2给定n,求Fibonacci数列的第n项。分析:1 递归法 1 // 19_1.cc 2 #include 3 using namespace std; 4 5 size_t f... 阅读全文

posted @ 2014-08-11 15:57 醉清风JM 阅读(220) 评论(0) 推荐(0) 编辑

IT公司100题-18-圆圈中最后剩下的数字
摘要:问题描述:n个数字(下标为0, 1, …, n-1)形成一个圆圈,从数字0开始,每次从这个圆圈中删除第m个数字(当前数字从1开始计数)。当一个数字被删除后,从被删除数字的下一个数字开始计数,继续删除第m个数字。求这个圆圈中剩下的最后一个数字。分析:这是有名的约瑟夫环问题。最直接的方法:使用链表来模拟... 阅读全文

posted @ 2014-08-11 15:19 醉清风JM 阅读(211) 评论(0) 推荐(0) 编辑

IT公司100题-17-第一个只出现一次的字符
摘要:问题描述:在一个字符串中找到第一个只出现一次的字符。例如输入asdertrtdsaf,输出e。分析:最简单的方法是直接遍历,时间复杂度为O(n^2)。进一步思考:字符串中的字符,只有256种可能性,使用字符的为下标,扫描一遍,存储各个字符在字符串中的出现。第二次扫描字符串,查看每个字符在字符串中的出... 阅读全文

posted @ 2014-08-11 13:51 醉清风JM 阅读(141) 评论(0) 推荐(0) 编辑

IT公司100题-16-层遍历二元树
摘要:问题描述:层遍历二叉树,同一层从左往右打印。定义二元查找树的结点为:typedef struct BSTreeNode { int data; BSTreeNode *left; BSTreeNode *right;} Node;例如输入二叉树:6/ \4 12/ \ / \25... 阅读全文

posted @ 2014-08-11 12:50 醉清风JM 阅读(150) 评论(0) 推荐(0) 编辑

IT公司100题-15-求二元查找树的镜像
摘要:问题描述:输入一颗二元查找树,将该树转换为它的镜像树,即对每一个节点,互换左右子树。例如输入: 6/ \4 12/ \ / \25 816输出: 6/ \12 4/ \ / \16852定义二元查找树的结点为:typedef struct BSTree { int dat... 阅读全文

posted @ 2014-08-10 21:44 醉清风JM 阅读(212) 评论(0) 推荐(0) 编辑

IT公司100题-14-排序数组中和为给定值的两个数字
摘要:问题描述:输入一个升序排序的数组,给定一个目标值target,求数组的两个数a和b,a+b=target。如果有多个组合满足这个条件,输出任意一对即可。例如,输入升序数组【1, 3, 4, 5, 13, 17】和目标值20。输出3和17。分析:最简单的办法,直接遍历,时间复杂度为O(n^2)。双下标... 阅读全文

posted @ 2014-08-10 19:51 醉清风JM 阅读(203) 评论(0) 推荐(0) 编辑

IT公司100题-13-求链表中倒数第k个结点
摘要:问题描述:输入一个单向链表,输出该链表中倒数第k个结点。链表倒数第0个节点为NULL。struct list_node { int data; list_node* next;};分析:方法1:首先计算出链表中节点的个数n,然后倒数第k个节点,为正数n-k+1个节点。需要遍历链表2次。方... 阅读全文

posted @ 2014-08-09 20:54 醉清风JM 阅读(207) 评论(0) 推荐(0) 编辑

IT公司100题-12-求1+2+…+n
摘要:问题描述:求1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字以及条件判断语句(A?B:C)。分析:利用类的静态变量实现:new一含有n个这种类的数组,那么该类的构造函数将会被调用n次。代码实现: 1 // 12.cc 2 #include 3 ... 阅读全文

posted @ 2014-08-09 20:42 醉清风JM 阅读(178) 评论(0) 推荐(0) 编辑

IT公司100题-11-求二叉树中节点的最大距离
摘要:问题描述:写程序,求一棵二叉树中相距最远的两个节点之间的距离。10/ \6 14/ \ / \4 8 12 16分析:二叉树中最远的两个节点,要么是根和一个叶子节点,要么是两个叶子节点。代码实现: 1 // 11.cc 2 #include 3 using namespace std... 阅读全文

posted @ 2014-08-08 19:36 醉清风JM 阅读(204) 评论(0) 推荐(0) 编辑

IT公司100题-10-翻转句子中单词的顺序
摘要:问题描述:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。例如输入“Hello world!”,则输出“world! Hello”。分析:先翻转各个单词,然后整体翻转即可。参考代码: 1 // 10.cc 2 #incl... 阅读全文

posted @ 2014-08-08 14:03 醉清风JM 阅读(203) 评论(0) 推荐(0) 编辑

IT公司100题-9-判断整数序列是不是二元查找树的后序遍历结果
摘要:问题描述:输入一个整数数组,判断该数组是不是某二元查找树的后序遍历的结果。如果是返回true,否则返回false。例如输入4, 8, 6, 12, 16, 14, 10,由于这一整数序列是如下树的后序遍历结果:10/ \614/\/ \4 8 12 16因此返回true。如果输入6, 5, 8,... 阅读全文

posted @ 2014-08-08 09:26 醉清风JM 阅读(167) 评论(0) 推荐(0) 编辑

程序员的学习和积累
摘要:对于一个程序员来说,学习的重要性相信大家都能意识得到。如何才能有效地学习,高效地学习?探讨下这个问题,我认为很有必要。 每个人学习的方法和习惯可能都不尽相同,很多人习惯了在学校的学习方式,特别是很多刚出校门的人。在他们潜意识中,学习只是应付考试的一种手段,考完就一切OK了,全部还给老师了也无所谓,... 阅读全文

posted @ 2014-08-07 19:52 醉清风JM 阅读(165) 评论(0) 推荐(0) 编辑

【STL】-迭代器的用法
摘要:初始化:list::iterator pos;算法:1. 遍历 for(pos = col1.begin(); pos != col1.end(); ++pos){...}代码: 1 #include 2 #include 3 #include 4 #include 5 #include ... 阅读全文

posted @ 2014-08-07 13:23 醉清风JM 阅读(209) 评论(0) 推荐(0) 编辑

【STL】-list的用法
摘要:初始化:#include list clist;算法:clist.push_back(c);clist.remove('d');代码: 1 #include 2 #include 3 #include 4 #include 5 using namespace std; 6 7 int ma... 阅读全文

posted @ 2014-08-07 13:16 醉清风JM 阅读(187) 评论(0) 推荐(0) 编辑

【STL】-deque的用法
摘要:初始化:#include deque fdeque;算法:fdeque.push_front(f);fdeque.push_back(f);fdeque.size()代码: 1 #include 2 #include 3 using namespace std; 4 int main() 5 {... 阅读全文

posted @ 2014-08-07 12:57 醉清风JM 阅读(221) 评论(0) 推荐(0) 编辑

【STL】- vector的用法
摘要:初始化:1. 默认构造:vector vint;2. 用包含10个元素的数组初始化:vector vint(ia, ia+10);算法:1. vint.push_back(i);2. vint.size();3. vint[i];4. vint.erase(pos1, pos2);代码: 1 #in... 阅读全文

posted @ 2014-08-06 17:26 醉清风JM 阅读(262) 评论(0) 推荐(0) 编辑

数据结构-各种排序算法
摘要:实现: 1 #ifndef SORT_H 2 #define SORT_H 3 4 /** 5 * Several sorting routines. 6 * Arrays are rearranged with smallest item first. 7 */ 8 9... 阅读全文

posted @ 2014-08-06 08:22 醉清风JM 阅读(286) 评论(0) 推荐(0) 编辑

【STL】-priority_queue的用法
摘要:初始化:priority_queue maxPQ;priority_queue,greater > minPQ;算法:minPQ.push( 4 )代码: 1 #include 2 #include 3 #include 4 #include 5 #include ... 阅读全文

posted @ 2014-08-04 23:15 醉清风JM 阅读(553) 评论(0) 推荐(0) 编辑

数据结构-二项队列
摘要:实现: 1 #ifndef BINOMIAL_QUEUE_H 2 #define BINOMIAL_QUEUE_H 3 4 #include 5 #include 6 #include "dsexceptions.h" 7 using namespace std; 8 9 ... 阅读全文

posted @ 2014-08-04 22:54 醉清风JM 阅读(234) 评论(0) 推荐(0) 编辑

IT公司100题-8-智力题
摘要:问题1:有两个房间,一间房里有三盏灯,另一间房有控制着三盏灯的三个开关,这两个房间是分割开的,从一间里不能看到另一间的情况。现在要求受训者分别进这两房间一次,然后判断出这三盏灯分别是由哪个开关控制的。有什么办法呢?分析:1.先走进有开关的房间,将三个开关编号为a b c。2.将开关a 打开5分钟,然... 阅读全文

posted @ 2014-08-01 16:06 醉清风JM 阅读(228) 评论(0) 推荐(0) 编辑

IT公司100题-7-判断两个链表是否相交
摘要:问题:有一个单链表,其中可能有一个环,也就是某个节点的next指向的是链表中在它之前的节点,这样在链表的尾部形成一环。1、如何判断一个链表是不是这类链表?问题扩展:1.如果链表可能有环呢?2.如果需要求出两个链表相交的第一个节点呢?分析:在无环的情况下,如果两个链表有结点相同,那么它们下一结点也相同... 阅读全文

posted @ 2014-08-01 13:10 醉清风JM 阅读(168) 评论(0) 推荐(0) 编辑

导航

点击右上角即可分享
微信分享提示