
程序员面试宝典
文章平均质量分 56
say_hi_lady
这个作者很懒,什么都没留下…
展开
-
5.4-类型转换
(int)a、&a、(int)&a、(int&)a的区别,很偏僻的题 #include #include #include #include using namespace std; int main() { float a = 1.0f; cout cout cout /*(int&)a:将a的引用强制转换为整型,意思是a所在的内存,本来定义的转载 2014-02-13 16:17:21 · 606 阅读 · 0 评论 -
程序员面试宝典_7.2 _面试例题9
#include using namespace std;struct S{int i;int *p;};int main(int argc, char* argv[]){S s;int *p=&s.i;p[0]=1;p[1]=5;cout<<p[0]<<" "<<s.i<<endl;cout<<&p[0]<<" "<<&s.i<<endl;cout<<p[1]<原创 2014-03-29 19:30:24 · 652 阅读 · 0 评论 -
程序员面试宝典_第13章_数据结构基础_排序算法小结(3)
六、直接选择排序算法[算法思想]:插入即表示将一个新的数据插入到一个有序数组中,并继续保持有序。例如有一个长度为N的无序数组,进行N-1次的插入即能完成排序;第一次,数组第1个数认为是有序的数组,将数组第二个元素插入仅有1个有序的数组中;第二次,数组前两个元素组成有序的数组,将数组第三个元素插入由两个元素构成的有序数组中......第N-1次,数组前N-1个元素组成有序的数组,将数组的第N个元原创 2014-04-12 11:19:07 · 781 阅读 · 0 评论 -
程序员面试宝典_第13章_数据结构基础_排序算法小结(2)
程序员面试宝典_第13章_数据结构基础_排序算法小结(1)原创 2014-04-11 20:57:23 · 767 阅读 · 0 评论 -
程序员面试宝典_第13章_数据结构基础_排序算法小结(1)
一、[算法思想]:将被排序的记录数组R[1..n]垂直排列,每个记录R[i]看作是重量为 R[i].key的气泡。根据轻气泡不能在重气泡之下的原则,从下往上扫描数组R:凡扫描到违反本原则的轻气泡,就使其向上"飘浮"。如此反复进行,直到最后任何两个气泡都是轻者在上,重者在下为止。原创 2014-04-11 09:34:51 · 820 阅读 · 0 评论 -
程序员面试宝典_第21章_智力测试
经理女儿年龄问题:注意:需要把“”原创 2014-04-09 10:08:34 · 989 阅读 · 0 评论 -
程序员面试宝典-第12章-面试例题
#include using namespace std;struct a{ int x:1; int y:2; int z:32;};int main(){a d;cout<<&d;d.z=d.x+d.y;printf("%d %d %d %d\n",d.x,d.y,d.z,sizeof(d));system("pause")return 0;}原创 2014-04-08 11:29:26 · 649 阅读 · 0 评论 -
程序员面试宝典_第13章_数据结构基础_排序算法小结(4)
十、基数排序算法[算法思想]:基数排序的发明可以追溯到1887年赫尔曼·何乐礼在打孔卡片制表机(Tabulation Machine)上的贡献。它是这样实现的:将所有待比较数值(正整数)统一为同样的数位长度,数位较短的数前面补零。然后,从最低位开始,依次进行一次排序。这样从最低位排序一直到最高位排序完成以后, 数列就变成一个有序序列。基数排序的方式可以采用LSD(Least signifi原创 2014-04-13 12:28:25 · 811 阅读 · 0 评论 -
Sizeof与Strlen的区别与联系
一、sizeof sizeof(...)是运算符,在头文件中typedef为unsigned int,其值在编译时即计算好了,参数可以是数组、指针、类型、对象、函数等。 它的功能是:获得保证能容纳实现所建立的最大对象的字节大小。 由于在编译时计算,因此sizeof不能用来返回动态分配的内存空间的大小。实际上,用sizeof来返回类型以及静态分配的对象、结构或数组所占的转载 2014-04-02 22:21:44 · 413 阅读 · 0 评论 -
程序员面试宝典-第九章-9.3-面试例题1-函数指针
#include using namespace std;int jug1(int x,int y){ if (x>=0) { return x; } else if (y==0) { return 0; } else return x/y;}int sub1(int x,int y){ return (x+y);原创 2014-04-01 19:39:28 · 737 阅读 · 0 评论 -
程序员面试宝典-第九章-9.1-面试例题3
#include #include using namespace std;void print(vector v){ cout<<"\n vector size is: "<<v.size()<<endl; vector::iterator p=v.begin();} int main() {vector array1;array1.push_back原创 2014-04-01 19:02:10 · 585 阅读 · 0 评论 -
程序员面试宝典-第九章-面试例题2-深浅复制
#include "stdafx.h"#include #include using namespace std;class Demo{public: Demo(const char* a) { str = new char[32]; strcpy(str,a); } ~Demo() { if (str) delete [] str; }priva转载 2014-04-01 18:09:31 · 501 阅读 · 0 评论 -
程序员面试宝典-第九章-9.3-面试例题2(有错)
#include using namespace std;template class tcontainer{ virtual void push(const T& ); virtual const T& pop(); virtual const T& begin(); virtual const T& end(); virtual size_t size();原创 2014-04-01 21:35:49 · 572 阅读 · 0 评论 -
程序员面试宝典-第七章-类的隐藏、覆盖
覆盖的是指子类函数覆盖基类函数在不同的类内(分别位于子类和父类)。同名同参。基类的函数名前必须有virtual关键字。隐藏指派生类的函数隐藏了基类的同名函数如果派生类函数与基类函数同名,但参数不同,无论基类函数前是否有virtual修饰,基类函数被隐。如果派生类函数与基类函数同名,参数也相同,但是基类函数前无virtual修饰,基类函数被隐藏。class Bas原创 2014-03-29 17:08:35 · 801 阅读 · 0 评论 -
传递动态内存
.Double dArray[2] = {3,9},*p,*q;p=&dArrary[0];q=p+1;cout<<q-p<<(int)q-(int)p;答案:1 8分析:q-p的实际运算是:(q的地址-p的地址)/sizeof(double)原创 2014-03-29 15:47:42 · 479 阅读 · 0 评论 -
第6章 预处理、const与sizeof
1.用一个宏定义FIND求一个结构体struct里某个变量相对struc的编移量如:struct student { int a; char b; double c; } 则: FIND(struct student,a); //等于0 FIND(struct student,b);//等于4答案:#define FIND( struc, e ) (转载 2014-03-29 15:24:56 · 538 阅读 · 0 评论 -
程序员面试宝典_8.2_典型递归问题_面试例题1
#include #include using namespace std;static vector pos_in_str;void find_sub_link(const char* p1, const char* p2, int i, int j){ if( !p1[i] || !p2[j] ) return; if( p2[j]==p1[i] && !p2[j+1] )原创 2014-03-30 09:19:20 · 679 阅读 · 0 评论 -
程序员面试宝典-11.1 覆盖
对于第一道例题,晕掉了原创 2014-08-20 15:48:36 · 602 阅读 · 0 评论