zoukankan      html  css  js  c++  java
  • 记录python面试题

    闲来无事,记录一下曾经以及深刻的面试题

    记录一下我记忆比较深的面试题,以后若用到python相关还能细细把玩

    搜狐面试题:

    一、写一个缓存优化策略

    解答:这个题主要考察对lru_cache的理解,所以只需要用一下functools里面的lru_cache装饰器就可以

    二、怎么在15M的内存中打印出来8G的数据

    解答:这个主要考察生成器的使用,需要迭代的方式读取数据就可以

    代码简单,就不书写了

    知乎面试题

    在15M的内存中有一个1-1000万的元素的列表,然后这个列表是无序的,在这些1-1000万中的元素中缺少一个元素,请把这个元素找出来

    解答:

    刚开始我看到他给我口述这道题的时候,我想到的是先排序,然后用生成器的方式。后来发现这个方法不可取。思路如下:

    由于内存的限制所以

    1、首先写一个1-1000万的数字以迭代的方式刷到磁盘中

    2、然后以迭代的方式把磁盘中的1000万个数字生成器的方式取出来 in的方式和这个无序列表进行比较。如果为False,那么这个数字就获取出来了

    代码简单。省略

    下面是一个框架必须要实现的三种算法

    (1)FIFO:First In First Out,先进先出
    (2)LRU:Least Recently Used,最近最少使用
    (3)LFU:Least Frequently Used,最不经常使用

  • 相关阅读:
    Java Thread 总结
    用 for/in 在 Java 5.0 中增强循环
    JAVA中synchronized和lock详解
    centos vim的安装目录在哪里
    Cannot add task 'wrapper' as a task with that name already exists.
    servlet的生命周期
    I/O同个文件需要注意的问题
    分治策略---求最大子数组
    Java实现 100!的阶乘
    Java中方法的重载与覆盖(随笔01)
  • 原文地址:https://www.cnblogs.com/pyrene/p/7932235.html
Copyright © 2011-2022 走看看