首页 > 代码库 > 完美校招只分三个职位 c++ 、java、 游戏策划
完美校招只分三个职位 c++ 、java、 游戏策划
完美校招的职位仅仅三个: c++ 、java、 游戏策划(总之一句话,基础非常重要,而且一定要精通一门语言)
问题一:给出一个十六进制的数0xFF 0x80 (只有2“位”) 将其转换成有符号的一字节的十进制整数
解:因为是转成有符号数 所以 可以先将其转成二进制 如:0xFF->1111 1111
可见符号位为1,为负数, 负数是以补码存储的,所以求其原码
补码减一 取反即为原码 1111 1110 ->1000 0001 -> -1 取反时符号位不变
0x80 1000 0000 符号位1 是负数 求原码: 0111 1111 -> 1000 0000 -128
0x00 0000 0000 符号位为0 补码即原码 0000 0000 -> 0
0x7F 0111 1111 符号位为0 0111 1111 ->127
一字节数中 0x00~0x79 为0~127 0x80~0xFF 为 -128~ -1
问题二:3*(4+6)-7 # 用代码实现这个运算表达式
可以参照编译原理中的逆波兰式
分为数据栈d与符号栈f
遇到数字则入栈d,遇到符号入栈f
d:3 4 6
f:* ( +
遇到)则符号栈出栈 至(
d: 3 4 6 +
f: *
继续入栈
d: 3 4 6 + 7
f: * -
直至遇到终结符#, 将符号栈出栈
d: 3 4 6 + 7 - *
此时逆波兰式 已经建立完成 开始运算
建立一个 运算栈 s, d顺序出栈 然后入栈s
s : 3 4 6
直至遇到符号+ ,s连续出栈2次
计算4+6 ->10 然后将新数据入栈s
s: 3 10
继续遵循此规则直至栈d为空,s最终会只有一个数,即为答案
问题一:给出一个十六进制的数0xFF 0x80 (只有2“位”) 将其转换成有符号的一字节的十进制整数
解:因为是转成有符号数 所以 可以先将其转成二进制 如:0xFF->1111 1111
可见符号位为1,为负数, 负数是以补码存储的,所以求其原码
补码减一 取反即为原码 1111 1110 ->1000 0001 -> -1 取反时符号位不变
0x80 1000 0000 符号位1 是负数 求原码: 0111 1111 -> 1000 0000 -128
0x00 0000 0000 符号位为0 补码即原码 0000 0000 -> 0
0x7F 0111 1111 符号位为0 0111 1111 ->127
一字节数中 0x00~0x79 为0~127 0x80~0xFF 为 -128~ -1
问题二:3*(4+6)-7 # 用代码实现这个运算表达式
可以参照编译原理中的逆波兰式
分为数据栈d与符号栈f
遇到数字则入栈d,遇到符号入栈f
d:3 4 6
f:* ( +
遇到)则符号栈出栈 至(
d: 3 4 6 +
f: *
继续入栈
d: 3 4 6 + 7
f: * -
直至遇到终结符#, 将符号栈出栈
d: 3 4 6 + 7 - *
此时逆波兰式 已经建立完成 开始运算
建立一个 运算栈 s, d顺序出栈 然后入栈s
s : 3 4 6
直至遇到符号+ ,s连续出栈2次
计算4+6 ->10 然后将新数据入栈s
s: 3 10
继续遵循此规则直至栈d为空,s最终会只有一个数,即为答案
问题三:有一组数, 给出其赫夫曼编码 要求平均权值最小
如: 3 7 9 1 12根据其大小建立赫夫曼树
问题四:c++中的虚继承
1、虚继承的作用
多继承时的二义性等
2、对虚基类的了解
问题五:单例模式
问题六:使一个类的实例 只能在堆中分配内存 不能在栈中分配内存
class A{};
A a = new A 是在堆中分配内存
A b; 是在栈中分配内存 调用其默认构造函数
所以将其默认构造函数声明为private就可以
总之,问的问题笔记偏重基础的。
完美校招只分三个职位 c++ 、java、 游戏策划
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。