摘要: 1、递归(技巧) 通过调用自身程序的方法称为递归,满足递归的三个条件 一个问题的解可以分解为几个子问题的解 这个问题与分解之后额度子问题,除了数据规模不同,求解思路完全一样 存在递归终止条件 注意:堆栈溢出 递归调试方法:1、打印日志发现,递归值 2、结合条件断点进行调试 2、贪心算法 Greedy 阅读全文
posted @ 2022-01-22 21:55 等会儿我呀 阅读(98) 评论(0) 推荐(0)
摘要: 1、排序算法 Sort 1、排序算法的执行效率衡量指标 最好情况、最坏情况、平均时间复杂度 时间复杂度的系数、常数、低接 比较次数和交换次数 2、内存消耗 原地排序:除了存储数据本身的空间,不需要额外的辅助存储空间 3、稳定性 稳定的排序算法: 如果待排序的序列中存在值相等的元素,经过排序之后,相等 阅读全文
posted @ 2022-01-22 21:53 等会儿我呀 阅读(117) 评论(0) 推荐(0)
摘要: 1、跳表 Skip List 链表加多级索引的结构,称为跳表。 在原始链表的基础上,对链表建立一级“索引”,down指针,指向下一级结点。在多级索引的条件下,会极大提高查找效率。 时间复杂度为 O(logn) 空间复杂度为 O(n):需要维护多层索引 其作为一种动态数据结构,在插入和删除操作中,需要 阅读全文
posted @ 2022-01-22 21:51 等会儿我呀 阅读(163) 评论(0) 推荐(0)
摘要: 1、数组 Array 1.1、概念 数组(Array)是一种线性表结构。它用一组连续的内存空间,来存储一组具有相同类型的数据。 1.2、特性 线性表(Linear List) 连续的内存空间和相同类型的数据 比如长度为10的 int 类型的数组 int[] a = new int[10],计算机给数 阅读全文
posted @ 2022-01-22 21:48 等会儿我呀 阅读(521) 评论(1) 推荐(4)