zoukankan      html  css  js  c++  java
  • COMP9021--7.1

    1. 读取相对位置的字符:file[start:end]

    2. 找到最久没有被使用过的姓名:csv.reader, with open

    read file

    seperate the file by giving different part different names【 for line in csv_file:
                               name,_,_ = line (the line looks like ''Eve',"F","23") 】

    create a dictionary, key is name, the list of year is the value
    if name in d, add to the list, otherwise create a new list

    3. 为了让代码看起来更简单,from collections import defaultdict, in this way it is fine to create an empty dictionary

    4. 当我们想要根据一个element的大小来进行倒序排列但是不能用reverse时,可以将这个element变成负数

    5. 扔石头问题,用尽量少的步骤和有限的石头得到从哪层扔石头石头可以正好摔碎

    假如我们只有两颗石头,第一颗可以从二楼扔,如果碎掉第一颗就尝试从一楼扔;如果第一颗没有碎就去4楼扔,以此类推

    如果我们用二分法,比如第一次从中间楼层扔,石头碎掉,为了得到具体在哪一层正好摔碎我们可能依然需要进行多次测试,不符合石头个数有限的大前提

    在模拟这个试验过程中我们可以from random import randint,随机抽取一个数作为石头恰好碎掉的点。我们要先找到石头可以碎掉的点和一个石头不会碎掉的点,然后慢慢减少两点的差距,直至这个差值减小为1

    根据我们在只有两颗石头中得到的规律,第一颗石头应该扔的位置应该等于我们拥有的石头总数(如果石头碎了我们最差的结果就是一层一层遍历找到真正意义上的可碎点)

    随着石头数量的 减少与上述差值的不断减小,最终得到准确楼层

    这里要关注一下base case: 即楼是0层以及没有石头

    6. import math
    math.ceil(x)

    向上取整

  • 相关阅读:
    DNS正向解析实现
    基于bind软件部署DNS服务器
    DNS解析工具使用案例
    DNS服务工作原理
    3
    .deb/.whl/.tgz/.tar/gz软件包安装方式(Ubuntu)
    博客系列目录
    Databricks 第3篇:pyspark.sql 通过JDBC连接数据库
    Databricks 第2篇:pyspark.sql 简介
    数据预处理 第4篇:数据预处理(sklearn 插补缺失值)
  • 原文地址:https://www.cnblogs.com/eleni/p/11118654.html
Copyright © 2011-2022 走看看