
java-算法与数据结构
文章平均质量分 61
风一吹你就要走
这个作者很懒,什么都没留下…
展开
-
ArrayList(动态数组)、LinkedList(单链表)、DLink(双向链表)的实现
首先来分析一下,这几种存储结构需要实现的共同点,也就是最基础的增删改查。 那么把它们的共性先提取出来,形成一个List接口。然后编写实现时需要继承该接口,重写里面的方法即可。 List接口 这是一个接口,包含这几个操作都需要的基本方法,头部添加元素,尾部添加元素,删除头部元素,删除尾部元素,删除指定元素,更改元素,查找元素,和元素的个数统计。 public interface List<T> { //头部添加 void addHead(T value); //尾原创 2022-01-27 18:17:00 · 989 阅读 · 0 评论 -
时间复杂度和空间复杂度分析
基本概念 算法:是解决某一特定问题求解步骤的描述,在计算机中表现为指令的有限序列,并且每条指令表示有一个或者多个操作。对于一个特定问题进行求解,可以使用不同的算法,或许最终结果是一样的,但在此过程中消耗的时间,占用的空间都有可能不同。 算法的特征:输入输出,有穷性,确定性,可行性。 算法的要求:正确性,可读性,健壮性,时间效率高和存储量低。 时间复杂度:它定性描述该算法的运行时间。这是一个代表算法输入值的字符串的长度的函数。时间复杂度常用大O符号表述,记作T(n)=O(f(n)。 平均时间复杂..原创 2022-01-13 22:41:57 · 405 阅读 · 0 评论