• 腾讯笔试题(2015)


    在Java中,以下那些数据结构可以以常量的时间复杂度0(1)添加元素()

    • HashMap
    • ArrayList
    • TreeMap
    • LinkedList 

    解析:  answer--A &   D 

          注意   ArrayList

    HashMap是以key和value键值对形式存储信息的,集合元素无序且不用查找再进行添加,直接指定新的key和value就ok, 时间复杂度是O(1)
    LinkedList是链接列表实现,是在链表的开头和结尾提供了插入删除等操作的,时间复杂度是O(1)
    ArrayList同理,是大小可变的数组,可以直接在结尾处添加元素,但是不能保证O(1)时间内任意添加一个元素。且当ArrayList需要扩容的时候,性能消耗是更加大的,先得重新开辟空间,然后再进行元素的添加
    TreeMap:内部实现是基于红黑树,插入操作都设计到树结构的调整. 

    一面墙,单独工作时,A花18小时砌好,B花24小时,C花30小时,现A, B, C的顺序轮流砌,每人工作1小时换班,完工时,B总共干了多少小时?()

    • 9小时
    • 8小时
    • 7小时
    • 6小时48分

          解:     A 工作一个小时完成工程的1/18  ,b 完成 1/24  c  1/30    ---->gcd(18,24,30)= 60;   所以可以转为代数式为    X/18 + Y/24 + Z/30 =1 ;

                     即 20X/60 +  15Y/60  + 12Z/60 =  6     可以知道因为是轮流换班,所以当x=y=z=7时     20X/60 +  15Y/60  + 12Z/60 <  6    逐步再试代值即可求           得 B 大于  7.5  所以取值为   8 小时。  (简单的数学题,easy)

        

    14. TCP报文首部信息中与关闭连接有关的是()

    A. URG  B. ACK  成功  C. SYN 同步  D.FIN 释放

    解析:D。URG(urgent)表示紧急传输;ACK表示传输确认,实际上关闭连接和建立连接、传输数据时一样也需要进行确认,所以个人感觉这题ACK可选也可不选;SYN表示同步;FIN(final还是finish?)用来释放连接;此外还有PSH(不要缓存立即push给应用层)和RST(复位reset,断开再重新建立连接)。

         

  • 相关阅读:
    php 数据类型
    Django REST framework基础:视图和路由
    Django REST framework基础:序列化
    android 适配器 ArrayAdapter,SimpleAdapter的学习
    关于系统模块设计的一点疑问?
    看了看 #ifndef 和#pragma once 的区别
    ace.js 中文手册
    .net core 3.1发布时视图Views文件夹不被打打包成.dll文件解决办法
    Asp.net core应用在 Kubernetes上内存使用率过高问题分析
    .Net Core内存回收模式及性能测试对比
  • 原文地址:https://www.cnblogs.com/gongxijun/p/4323614.html
Copyright © 2020-2023  润新知