信息学奥赛初赛天天练-71-NOIP2016普及组-基础题2-进制转换、二进制转八进制、八进制转二进制、二叉树数组存储、寻址空间

本文主要是介绍信息学奥赛初赛天天练-71-NOIP2016普及组-基础题2-进制转换、二进制转八进制、八进制转二进制、二叉树数组存储、寻址空间,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

NOIP 2016 普及组 基础题2

4 以下不是 CPU 生产厂商的是( )
A Intel
B AMD
C Microsoft
D IBM

8 与二进制小数 0.1相等的八进制数是( )
A 0.8
B 0.4
C 0.2
D 0.1

9 以下是 32 位机器和 64 位机器的区别是( )
A 显示器不同
B 硬盘大小不同
C 寻址空间不同
D 输入法不同

11一棵二叉树如右图所示,若采用顺序存储结构,即用一 维数组元素存储该二叉树中的结点(根结点的下标为 1, 若某结点的下标为 i,则其左孩子位于下标 2i 处、右孩 子位于下标 (2i+1) 处,则图中所有结点的最大下标为( )


A 6
B 10
C 12
D 15

12 若有如下程序段,其中 s,a,b,c均已定义为整型变量,且 a,c均已赋值 (c大于 0)

s = a;
for (b = 1;b <= c; b++ )s = s + 1;

则与上述程序段修改 s 值的功能等价的赋值语句是( )

A s = a + b;
B s = a + c;
C s = s + c;
D s = b + c;

2 相关知识点

1) 进制转换

二进制转八进制

二进制转换成八进制的方法是,取三合一法,即从二进制的小数点为分界点,向左(或向右)每三位取成一位

(1010 0100)B = (010 001 100 )B=(244)O

二进制带小数转八进制

(0010.0110)B = (000 010.011 000)B=(2.3)O

八进制转二进制

二进制转换成八进制的反向操作

(244)O=(010 100 100 )B=(1010 0100)B

八进制带小数转二进制

(24.4)O=(010 100. 100 )B=(10100.1)B

2) 二叉树数组存储

完美二叉树,我们将所有节点按照层序遍历的顺序存储在一个数组中,则每个节点都对应唯一的数组索引

若节点的索引为 𝑖 ,则该节点的左子节点索引为 2𝑖 + 1 ,右子节点索引为 2𝑖 + 2

任意二叉树数组存储

任意二叉树有些节点是不满的,因此把不满的二叉树对应节点空出来,或者使用特殊数字表示,比如使用-1表示

3) 寻址空间

寻址空间(Addressing Space)是指在计算机系统中可以被处理器(CPU)访问的内存地址范围。它决定了计算机可以访问多少内存以及如何访问这些内存。寻址空间的大小取决于处理器的地址总线宽度

物理寻址空间:这是指实际存在的物理内存(RAM)的大小。例如,如果一个计算机有1GB的物理内存,那么它的物理寻址空间就是1GB

例如,一个32位的处理器可以寻址2^32 个不同的内存地址,即4GB的寻址空间。而一个64位的处理器理论上可以寻址2^64个不同的内存地址,即16EB(Exabytes)的寻址空间。然而,实际的可用寻址空间可能受到操作系统和硬件限制的影响

3 思路分析

4 以下不是 CPU 生产厂商的是( C )
A Intel
B AMD
C Microsoft
D IBM

分析

A Intel:Intel 是全球最大的半导体生产厂商之一,主要生产 CPU(中央处理器),如酷睿系列,Intel 是一个 CPU 生产厂商
B AMD:AMD(Advanced Micro Devices)是一家美国的跨国半导体公司,主要生产 CPU 和 GPU(图形处理器),AMD是一个CPU生产厂商
C Microsoft:Microsoft 是一家美国的跨国科技公司,主要业务包括操作系统、办公软件、云计算服务等。虽然 Microsoft 生产了一些硬件产品,如 Surface 系列,但它并不生产 CPU,Microsoft 不是一个 CPU 生产厂商。
D IBM:IBM(International Business Machines Corporation)是一家美国的跨国科技公司,业务范围广泛,包括硬件、软件、云计算服务等。IBM 曾经生产过 CPU,如 PowerPC 系列,IBM 是一个 CPU 生产厂商。
所以选 C

8 与二进制小数 0.1相等的八进制数是( B )
A 0.8
B 0.4
C 0.2
D 0.1

分析

二进制转换成八进制的方法是,取三合一法,即从二进制的小数点为分界点,向左(或向右)每三位取成一位
0.1
左边取3为000,右边去3为100,对应8进制4
所以为0.4

9 以下是 32 位机器和 64 位机器的区别是( C )
A 显示器不同
B 硬盘大小不同
C 寻址空间不同
D 输入法不同

分析

32 位机器和 64 位机器的主要区别在于它们的寻址空间和数据处理能力
A 不正确,因为显示器的类型和尺寸与计算机的位数无关,而是取决于显卡和显示器本身的规格。
B 不正确,硬盘的大小与计算机的位数无关,而是取决于硬盘本身的容量。
C 正确。32 位机器的最大寻址空间为 2^32 字节,约为 4GB;而 64 位机器的最大寻址空间为 2^64 字节,远远大于 4GB。这意味着 64 位机器可以处理更大的内存空间,从而提高性能。
D 不正确,输入法的类型和功能与计算机的位数无关,而是取决于操作系统和输入法软件本身
所以选C

11一棵二叉树如右图所示,若采用顺序存储结构,即用一 维数组元素存储该二叉树中的结点(根结点的下标为 1, 若某结点的下标为 i,则其左孩子位于下标 2i 处、右孩 子位于下标 (2i+1) 处,则图中所有结点的最大下标为( D )

A 6
B 10
C 12
D 15

分析

如果下图所示
1的下标为1
2的下标为2*1+1=3
3的下标为2*3+1=7
4的下标为2*7+1=15

12 若有如下程序段,其中 s,a,b,c均已定义为整型变量,且 a,c均已赋值 (c大于 0)

s = a;
for (b = 1;b <= c; b++ )s = s + 1;

则与上述程序段修改 s 值的功能等价的赋值语句是( B )

A s = a + b;
B s = a + c;
C s = s + c;
D s = b + c;

分析

s=a ,s一开始赋值为a
如下循环从1开始一直累加到c,每次s加1
for (b = 1;b <= c; b++ )s = s + 1;
循环结束总共加了c次1,所以s累加了c
所以s=a+c

这篇关于信息学奥赛初赛天天练-71-NOIP2016普及组-基础题2-进制转换、二进制转八进制、八进制转二进制、二叉树数组存储、寻址空间的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1094102

相关文章

python panda库从基础到高级操作分析

《pythonpanda库从基础到高级操作分析》本文介绍了Pandas库的核心功能,包括处理结构化数据的Series和DataFrame数据结构,数据读取、清洗、分组聚合、合并、时间序列分析及大数据... 目录1. Pandas 概述2. 基本操作:数据读取与查看3. 索引操作:精准定位数据4. Group

Python进行JSON和Excel文件转换处理指南

《Python进行JSON和Excel文件转换处理指南》在数据交换与系统集成中,JSON与Excel是两种极为常见的数据格式,本文将介绍如何使用Python实现将JSON转换为格式化的Excel文件,... 目录将 jsON 导入为格式化 Excel将 Excel 导出为结构化 JSON处理嵌套 JSON:

Kotlin Map映射转换问题小结

《KotlinMap映射转换问题小结》文章介绍了Kotlin集合转换的多种方法,包括map(一对一转换)、mapIndexed(带索引)、mapNotNull(过滤null)、mapKeys/map... 目录Kotlin 集合转换:map、mapIndexed、mapNotNull、mapKeys、map

SpringBoot3.X 整合 MinIO 存储原生方案

《SpringBoot3.X整合MinIO存储原生方案》本文详细介绍了SpringBoot3.X整合MinIO的原生方案,从环境搭建到核心功能实现,涵盖了文件上传、下载、删除等常用操作,并补充了... 目录SpringBoot3.X整合MinIO存储原生方案:从环境搭建到实战开发一、前言:为什么选择MinI

Java中的数组与集合基本用法详解

《Java中的数组与集合基本用法详解》本文介绍了Java数组和集合框架的基础知识,数组部分涵盖了一维、二维及多维数组的声明、初始化、访问与遍历方法,以及Arrays类的常用操作,对Java数组与集合相... 目录一、Java数组基础1.1 数组结构概述1.2 一维数组1.2.1 声明与初始化1.2.2 访问

Ubuntu如何分配​​未使用的空间

《Ubuntu如何分配​​未使用的空间》Ubuntu磁盘空间不足,实际未分配空间8.2G因LVM卷组名称格式差异(双破折号误写)导致无法扩展,确认正确卷组名后,使用lvextend和resize2fs... 目录1:原因2:操作3:报错5:解决问题:确认卷组名称​6:再次操作7:验证扩展是否成功8:问题已解

Python实现对阿里云OSS对象存储的操作详解

《Python实现对阿里云OSS对象存储的操作详解》这篇文章主要为大家详细介绍了Python实现对阿里云OSS对象存储的操作相关知识,包括连接,上传,下载,列举等功能,感兴趣的小伙伴可以了解下... 目录一、直接使用代码二、详细使用1. 环境准备2. 初始化配置3. bucket配置创建4. 文件上传到os

MySQL查询JSON数组字段包含特定字符串的方法

《MySQL查询JSON数组字段包含特定字符串的方法》在MySQL数据库中,当某个字段存储的是JSON数组,需要查询数组中包含特定字符串的记录时传统的LIKE语句无法直接使用,下面小编就为大家介绍两种... 目录问题背景解决方案对比1. 精确匹配方案(推荐)2. 模糊匹配方案参数化查询示例使用场景建议性能优

关于集合与数组转换实现方法

《关于集合与数组转换实现方法》:本文主要介绍关于集合与数组转换实现方法,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、Arrays.asList()1.1、方法作用1.2、内部实现1.3、修改元素的影响1.4、注意事项2、list.toArray()2.1、方

Java中调用数据库存储过程的示例代码

《Java中调用数据库存储过程的示例代码》本文介绍Java通过JDBC调用数据库存储过程的方法,涵盖参数类型、执行步骤及数据库差异,需注意异常处理与资源管理,以优化性能并实现复杂业务逻辑,感兴趣的朋友... 目录一、存储过程概述二、Java调用存储过程的基本javascript步骤三、Java调用存储过程示