备战百天,准备机考【机考笔记】

简答题

  1. 数组/列表的索引为什么是从0开始的?
    从0开始能够给出更好的不等式,元素下标就等于序列中它前面的元素数
  2. 数组和链表之间有什么异同点?
    数组是将一种相同类型元素存储在连续存储空间的数据结构
    连标是线性数据结构,每个元素都是单独的对象,各个元素之间通过指针链接
    不同点:数组连续 链表不连续
  3. 数组和列表之间有什么异同点?
    列表是长度可变的数组,可以在运行中实时扩容
  4. 在你所使用的编程语言中,数组和列表之间是否存在严格的区别?
    在python中并没有太大区别
  5. 栈的特点是什么?队列的特点是什么?
    栈 后进先出的线性表
    队列:先进先出的线性表
  6. 你能否用一个双向队列来实现一个栈?
    可以
  7. 优先队列和队列之间有什么异同点?
    都是队列 优先队列可以直接插入和删除
  8. 哈希表和数组之间有什么异同点?
    哈希表查找更快
  9. 哈希表(map)和哈希集合(set)之间有什么异同点?
    map是一组键值对结构,有极快的查找速度
    集合(set) 是一组key 的集合不储存value set中没有重复的key
  10. 给定一个数组[5, 3, 8, 1, 9, 6, 7, 8, 2],请描述用这个数组构建一个单调递减栈(从栈顶到栈底单调递减)的过程。
    为了构建一个单调递减栈,我们需要从数组的从左到右依次遍历元素,并根据以下规则来维护栈的单调递减性:
    1.如果栈为空,或者栈顶元素大于或等于当前元素,则将当前元素直接压入栈
    2.如果栈顶元素小于当前元素,则将栈顶元素弹出,直到栈顶元素大于等于当前元素或者栈为空,然后将当前元素压入栈
    过程:以下是构建单调送减栈的详细步聚:
    输入数组
    5,3,8,1,9,6,7,8,2
    过程步骤
    1.开始时,栈为空
    2.处理元素 5:
    。栈为空,将5压入栈.
    栈状态: 5
    3.处理元素 3:
    栈顶元素 5 大于 3,直接将 3 压入栈。
    栈状态: 5.3
    4.处理元表 8:
    栈顶元素 3 小于 8,弹出 3.
    新的栈顶元素 5 小于 8,弹出 5
    栈为空,将8 压入栈.
    栈状态: 8
  11. 处理元素1:
    。 栈顶元奏 8 大于 1,直接将 1 压入栈。
    栈状态: 8.1
    6.处理元素 9:
    。 栈顶元奏1 小于 9,弹出 1.
    。 新的栈顶元素 8 小于 9,弹出 8.
    。栈为空,将9压入栈,
    栈状态: 9
    7.处理元素 6:
    。栈顶元奏 9 大于 6,直接将 6压入栈
    栈状态: 9,6
    8.处理元表 7:
    ·栈顶元妻6 小于 7,弹出 6,
    新的栈顶元素 9 大于 7,将7压入栈。e
    。栈状态:9.7
    9.处理元素 8:
    栈顶元素7 小于 8,弹出 7
    新的栈顶元妻 9 大于 8,将 8 压入栈。e
    栈状态: 9.8
    10.处理元素 2:
    栈顶元奏 8 大于 2,直接将 2 压入栈.
    栈状态: 9,8,2
相关推荐
朝新_1 小时前
【SpringBoot】详解Maven的操作与配置
java·spring boot·笔记·后端·spring·maven·javaee
-Excalibur-3 小时前
形象解释关于TCP/IP模型——层层封装MAC数据帧的过程
linux·c语言·网络·笔记·单片机·网络协议·tcp/ip
想唱rap4 小时前
C++ list 类的使用
c语言·开发语言·数据结构·c++·笔记·算法·list
朝新_5 小时前
【EE初阶】JVM
java·开发语言·网络·jvm·笔记·算法·javaee
牛马大师兄6 小时前
STM32实现低功耗管理使用配置知识梳理笔记
笔记·stm32·单片机·嵌入式硬件·物联网·低功耗
chushiyunen8 小时前
neo4j图数据库笔记
数据库·笔记·neo4j
丰锋ff8 小时前
2005 年真题配套词汇单词笔记(考研真相)
笔记
摇滚侠9 小时前
Spring Boot3零基础教程,生命周期启动加载机制,笔记64
spring boot·笔记
摇滚侠9 小时前
Spring Boot3零基础教程,整合 Redis,笔记69
spring boot·redis·笔记
JJJJ_iii9 小时前
【机器学习08】模型评估与选择、偏差与方差、学习曲线
人工智能·笔记·python·深度学习·学习·机器学习