iOS高级程序员进阶:基础算法篇

iOS高级程序员进阶:基础算法篇

227分钟

算法通常是指解决问题的方案和步骤,在编程中,更通俗的讲算法就是解决特定问题的一系列指令。算法要求对于一定规模内的输入,在有限时间内会获得所要求的输出。通常,一个算法的优劣由时间复杂度和空间复杂度来衡量…

算法通常是指解决问题的方案和步骤,在编程中,更通俗的讲算法就是解决特定问题的一系列指令。算法要求对于一定规模内的输入,在有限时间内会获得所要求的输出。通常,一个算法的优劣由时间复杂度和空间复杂度来衡量。 作为iOS研发者我们是否需要学习算法,毋庸置疑是需要的。就算是非常面向业务的开发需求,有算法基础的研发者也会编写出更加优质的代码,在输入规模扩大的情况下,这些优质的代码也会拥有更强的稳定性并使得应用程序表现出更好的性能。在笔试面试中,算法大多情况下也是必考部分。熟悉常用的基础算法是研发者的基本功。 除了提高代码质量与面试加分外,学习算法也可以锻炼思维能力,提高研发者的逻辑思维能力与抽象建模能力。在技术迭代发展飞快的当今,学习核心算法要比学习一门应用技术更加重要。
开篇 第一章 常见的算法复杂度 - 1.1 常见的算法时间复杂度 - 1.2 常见的算法空间复杂度 第二章 常见的算法 - 2.1 顺序查找算法 - 2.2 二分查找算法 - 2.3 插值查找算法 - 2.4 斐波那契查找算法 - 2.5 二叉查找树查找算法 - 2.6 分块查找算法 - 2.7 哈希查找算法 第三章 常见的排序算法 - 3.1冒泡排序算法 - 3.2 选择排序算法 - 3.3 快速排序算法 - 3.4 插入排序算法 - 3.5 希尔排序算法 - 3.6 桶排序算法 - 3.7 归并排序算法 - 3.8 堆排序算法 第四章 算法中树的学习 - 4.1 初识树 - 4.2 遍历二叉树 - 4.3 二叉查找树 - 4.4 平衡二叉查找树 - 4.5 LL旋转与RR旋转 - 4.6 LR旋转与RL旋转
张益珲
张益珲

高级讲师,互联网技术书籍作者