认识时间复杂度

常数时间的操作:一个操作如果和数据量没有关系,每次都是 固定时间内完成的操作,叫做常数操作。

时间复杂度为一个算法流程中,常数操作数量的指标。常用O (读作big O)来表示。具体来说,在常数操作数量的表达式中, 只要高阶项,不要低阶项,也不要高阶项的系数,剩下的部分 如果记为f(N),那么时间复杂度为O(f(N))。

评价一个算法流程的好坏,先看时间复杂度的指标,然后再分 析不同数据样本下的实际运行时间,也就是常数项时间。

Groovy基础语法-范围

本文记录Java学习过程中遇到的Groovy基础语法-范围~

示例代码:


// Range的定义
def range = 1..10
println range
println range.class

// Range的获取
println range[0]
println range.contains(10)
// 起始值
println range.from
println range.to

// Range的操作与List一样

// Range的遍历

// each
range.each {
    println it
}

// for
for (i in range) {
    println i
}

// switch
def getGrade(Number number) {
    def result
    switch (number) {
        case 0..<60:
            result = '不及格'
            break
        case 60..<70:
            result = '及格'
            break
        case 70..<80:
            result = '良好'
            break
        case 80..100:
            result = '优秀'
            break
    }
    return result
}

println getGrade(60)