随笔分类 - 数据结构和算法
摘要:一、前言 排序算法的评价指标: 算法执行效率 最好、最坏以及平均时间复杂度。注意:原始数据有序度的不同,对排序的执行时间有很大的影响 时间复杂度的系数、常数、低阶。注意:实际开发中,数据规模可能很小,因此需要考虑这几个方面 比较次数和交换次数。注意:基于比较的排序算法会涉两个基本的操作,即元素比较大
阅读全文
摘要:一、常见的两种方法: 二分法 牛顿迭代法 二、具体思路 二分法的思路:首先确定给定值的最小的整数空间范围;然后利用二分查找法来判断这个值是否达到了所要求的精度 牛顿迭代法:利用直线方程不断逼近曲线方程与x轴的交点 核心公式:Xi+1 = Xi/2 + a/(2*Xi)
阅读全文
摘要:一、基本概念 查找表:由相同类型的元素构成的集合 静态查找表:进行查找时,没有频繁的删除和插入操作 动态查找表:查找时,不仅存在查找操作,还有元素的插入与删除操作 查找:给定一个确定的值,在查找表中寻找与给定值相同的数据元素 二、分类 线性查找算法 核心思想:从头(尾)依次与查找表中的元素进行比较
阅读全文
摘要:复杂度分析目的:判断算法程序的执行效率。 事后统计法分析算法复杂度的局限性 测试结果依赖运行环境 测试结果受数据规模和数据的有序性影响比较大 3. 常见的复杂度分析 大O表示法 时间复杂度:不表示代码具体的执行时间,而是表示代码执行时间随数据规模增长的变化趋势 分析方法: 只关注执行次数最多的一段代
阅读全文
摘要:定义 数据结构是存储一组数据的结构; 算法是操作一组数据的方法。 2.数据结构和算法的关系 数据结构是为算法服务的,算法是作用在特定数据结构上的。 3.解决的问题 如何更快、更省的存储和处理数据。 4.核心 复杂度分析,包括时间和空间复杂度分析,用于判断算法的性能好坏,即效率和资源消耗的有机平衡。
阅读全文
摘要:恢复内容开始 恢复内容开始 1.什么是递归 在java中,递归就是方法直接或者间接的调用自己本身。 核心思想:就是分治算法,将大问题分解成小问题求解 优缺点: 优点 缺点 代码简洁、可读性好 递归调用,占用空间大 递归太深,容易发生堆栈溢出 容易出现重复计算 2.常用的递归场景: 各种数学问题,如八
阅读全文

浙公网安备 33010602011771号