zoukankan      html  css  js  c++  java
  • 一个完美的世界 访问

    完善学校只招收三个职位 c++ 、java、  游戏计划

    我的脸C++,问部分基础现在的问题.


    一、给出一个十六进制的数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++——多态
    C++——继承
    PAT1002 A+B for Polynomials
    PAT1001-A+B Format
    C++——运算符重载(下)
    图像处理与Python实现(岳亚伟)笔记二——彩色图像处理
    图像处理与Python实现(岳亚伟)笔记一
    827. Making A Large Island
    995. Minimum Number of K Consecutive Bit Flips (2021/2/18每日一题)
    685. Redundant Connection II (LeetCode 刷题笔记)
  • 原文地址:https://www.cnblogs.com/yxwkf/p/4714593.html
Copyright © 2011-2022 走看看