![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
莫法
向来缘浅,奈何情深
展开
-
算法基础(一)--大O分析法(上)
复杂度分析(上) 为什么需要复杂度分析? 你可能会有疑惑,我把代码跑一遍,通过统计、监控,就能得到算法执行的时间和占用的内存大小。为什么还要做时间、空间 复杂度分析呢?这种分析方法能比我实实在在跑一遍得到的数据更准确吗?首先,可以肯定地说,这种评估算法执行效率地方法 是正确地。很多数据结构和算法书籍还给这种方法起了一个名字,叫事后统计法。但是这种统计方法有非常大地局限性: 测试结果非常依赖测试...原创 2019-05-07 18:25:16 · 1238 阅读 · 0 评论 -
算法基础(二)--大O分析法(下)
时间复杂度(下) 最好、最坏情况时间复杂度 同样,我们先看一段代码,你可以尝试先自己分析一下它的时间复杂度: //n 表示切片arrary的长度 func find(arrary []int,n int,x int) (pos int) { i := 0 pos := -1 for ;i<n;i++ { if arrary[i] == x { ...原创 2019-05-07 18:27:36 · 554 阅读 · 0 评论 -
算法基础(三)--数据结构(数组)
数组 大部分编程语言中,数组都是从0开始编号的,但你是否下意识地想过,为什么数组要从0开始编号,而不是从1开始 呢? 从1开始不是更符合人类地思维习惯吗? 如何实现随机访问 什么是数组?我想你心中已经有了答案。不过,我还是想用专业的话来给你做下解释。数组(Array)是一种 线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。这个定义里有几个关键词, 理解这几个关键词,理解了这几...原创 2019-05-07 18:30:24 · 168 阅读 · 0 评论