摘要: ####数组的内存分布 ####一维数组的寻址公式 a[i]_address = base_address + i * data_type_size 其中data_type_size表示数组中每个元素的大小。比如数组中存储的是int类型数据,所以data_type_size就为4个字节。 ####二 阅读全文
posted @ 2020-04-04 15:29 limaodeng 阅读(215) 评论(0) 推荐(0)
摘要: ####单链表 ####双向链表 ####循环链表 ####双向循环链表 ####链表与数据的内存分布 ####链表与数组的时间复杂度对比 ####单链表的基本操作 package com.datastructure.linkedlist; /** * @Auther: dlm * @Date: 2 阅读全文
posted @ 2020-04-04 15:21 limaodeng 阅读(130) 评论(0) 推荐(0)
摘要: 其实,空间复杂度比时间复杂度相对来说容易分析得多。 下面这段代码中,只有第三行申请的空间为 n ,其他代码申请的空间都是常数阶。因此这段代码的空间复杂度为 O(n)。 其实,我们常见的空间复杂度主要有O(1)、O(n)、O(n2 )。 像O(logn)、O(nlogn)这样的对数阶复杂度平时基本遇不 阅读全文
posted @ 2020-04-04 12:28 limaodeng 阅读(185) 评论(0) 推荐(0)
摘要: 这篇文章并不会讲时间复杂度的理论知识,而是通过讨论分析几种经典的时间复杂度,从而使我们能够求解平常开发中遇到的代码的时间复杂度。 ####时间复杂度分析方法: #####1、循环执行次数最多的代码 int cal(int n) { int sum = 0; int i = 1; for (; i < 阅读全文
posted @ 2020-04-04 12:07 limaodeng 阅读(432) 评论(0) 推荐(0)