Java数据结构、算法、算法设计原则汇总

自己整理的表格
Java数据结构
序号 数据结构 对象 优点 缺点
1 Stack 后进先出存取方式 存取其他项很慢
2 队列 Queue 先进先出存取方式 存取其他项很慢
3 Heap 插入、删除快,对最大数据项存储快 存取其他项很慢
4 数组 [] 插入快 查找、删除慢,大小固定,只能存储单一元素
5 有序数组 [] 相对无序数组查询快 插入、删除慢,大小固定,只能存储单一元素
6 链表 LinkedList 插入、删除快 查询慢
7 哈希表 Hash 若知道key则存取极快 删除慢,对存储空间使用不充分
8 Graph 对现实世界建模 有些算法慢且复杂
9 动态数组 ArrayList 查询、修改快 插入、删除慢
10
Java算法
序号 特征 备注
1 有穷性 算法中的每个步骤都能在有限时间内完成
2 确定性 让人能明确其含义及如何执行,在任何条件下算法都只有一条路径
3 可行性 素有操作都可以通过已经实现的基本操作运算有限次数将以实现
4 有输入 有算法加工对象
5 有输出 算法的结果,即该算法的功能
Java算法设计原则
序号 原则 备注
1 正确性 满足需求
2 可读性 容易让人理解,晦涩难懂的算法难以调试且可能有较多的错误
3 健壮性 对非法数据应当有恰当的反应及处理,而不是直接中断操作
4 高效且低存储

你可能感兴趣的:(Java)