C++/C#面试_总结
来源:互联网 发布:淘宝信用贷款怎么查看 编辑:程序博客网 时间:2024/05/17 22:50
1. YSB_HW 公司
1. define用法与typedef,inline 的关系。
参见另一篇文章.
2. 实现栈类的定义和基本实现.(构造,析构,Push, Pop)
3. 统计一个串中的数字出现的次数, 和字母出现的次数。
2. WSCX 公司
1. 倒置一个string, 如:"Jacky is the best" -> "best the is Jacky".
void Revert(string &str){}
我的解决办法是:复制一个相同的串, 然后用这个把这个串的单个单个的单词拷贝到原来串中即可。
2. 找出一个串中不重复的第一个字符. 如: "abcdefabcdefjklmklmo" 应返回"j".
我的解决办法是:先构造一个二维数组, record[26][3]. //此处假设只处理字母, 而且是小写字母。 如果要针对其他字母,则可以扩大这个数组大小。
record[x][0], 用来存储这个字母是否出现, 默认为0
record[x][1], 用来存储这个字母出现次数, 默认为0
record[x][2], 用来存储这个字母最先出现的位置, 默认为整个串长度, 如果默认为-1,则在后面的比较过程中会遇到麻烦。
然后遍历一遍这个串, 即可完成。
3. 一串关于int (*str[])(int), int *a; 等的解释。
4. Static用法
5. Inline与define的用法
内联函数和宏都是在程序出现的地方展开,内联函数不是通过函数调用实现的,
是在调用该函数的程序处将它展开(在编译期间完成的);宏同样时;
不同的是:内联函数可以在编译期间完成诸如类型检测,语句是否正确等编译功能;宏就不具有这样的功能,而且宏展开的时间和内联函数也是不同的(在运行期间展开)
3. DHC 公司
这个公司考得很杂, 什么都有, 数据库, 网络层, 操作系统,都有涉及
1. STL 包含哪三部分:算法,容器,迭代器。
2. 同步有两种方法:信号量, 和PV原语操作
3. TCP/IP 四层结构(应用层,传输层,互连网络层,网络接口层)和OSI七层结构(物理层、数据链路层、网络层、传输层、会话层、表示层和应用层)
4. Windows 进程间通信方式:文件映射,共享内存, 匿名管道, 命名管道, 邮件槽, 剪贴板, 动态数据交换 等, 参见:http://hi.baidu.com/sinbh/blog/item/a3d386d145bec23f9b5027a9.html
5. string 类的定义,实现,(构造, 析构, 拷贝构造函数, 操作符=重载)
6. 死锁原因与如何预防死锁.
7. 建立Socket连接的三个步骤.
8. 进程(进程就是应用程序的运行实例。每个进程都有自己私有的虚拟地址空间。每个进程都有一个主线程,但可以建立另外的线程。进程中的线程是并行执行的,每个线程占用CPU的时间由系统来划分。)
4. MS公司SDE
拷贝一个单链表, 每个结点除了next指针还有一个random指针, random指针可以指向后面链表中的任何一个。
解析:(最好的方法, 其实主要是用到了Dictionary中的存储映射关系, 其中如果用Hash表,也可以实现, 但要考虑如何写这个hash算法)
1. 根据next指针拷贝完各个结点, 在拷贝的同事用一个Dictionary 存储新结点与原结点的对应关系。
2. 根据next指针拷贝完各个结点后, 然后再重新遍历原链表中的random指针,并利用Dictionary中的唯一对应关系来进行新结点的random指针赋值。
方法2:
1. 拷贝各结点, 用next指针
2. 存储新点与旧结点的关系,用二个一维数组, 一个存旧结点的指针,一个存新结点的指针, 下标要保持对应。
3. 最后遍历旧数组的random指针时, 一一对应改新结点的random指针即可。
- C++/C#面试_总结
- C、C++、C#面试总结
- c/c++面试总结
- C/C++面试总结
- 面试总结(C++)
- C/C++面试总结
- C#面试问答总结1
- C#面试问答总结1
- 程序员面试_记录与总结
- Android面试_别人总结的
- [C#] C#面试问题大全
- c/c++学习_面试题目
- 读《编程之美》_面试杂谈_代码总结
- c语言_知识点总结
- C++_常用总结0001
- C语言面试题目总结
- c语言面试知识总结
- C/C++面试题目总结
- Oracle中Decode()函数使用技巧
- C/C++中关键字static,const,inline,define,typedef的用法及其意义
- 外部JS得到客户端ID
- 好习惯影响着开发效率
- 一些常用的代码
- C++/C#面试_总结
- FPGA中信号的延迟
- 在C#中使用NHibernate框架查询数据
- 读*.spa文件,比较靠谱的方法似乎还是,直接用UltraEditor打开二进制文件,找相关的位置并猜测...
- Rational Rose 2003 下载及破解方法
- 程序开发用表收集
- 建立NHibernateTest的Windows解决方案
- MSN 帳號被惡搞了
- 不要让我思考之SWFUpload上传控件