摘要: Web Audio API 提供了在 Web 上控制音频的一个非常有效通用的系统,允许开发者来自选音频源,对音频添加特效,使音频可视化,添加空间效果 (如平移),等等。 AudioContext 接口表示由音频模块连接而成的音频处理图,每个模块对应一个 AudioNode。 AudioContext 阅读全文
posted @ 2020-04-04 21:30 彭尼玛 阅读(484) 评论(0) 推荐(0) 编辑
摘要: 基数排序 不需要比较,基于 分配 + 收集 的思想。 思路: 桶实际上是队列,先进先出 1. 建 10 个 桶,分别为 0~9 2. 第一趟分配(按 个位 排),把数丢到 桶里 3. 然后 收集回来(回来之后会发现 数的个位为有序的了) 4. 第二趟分配(按 十位 排) 5. 然后 收集回来(回来之 阅读全文
posted @ 2020-04-03 15:04 彭尼玛 阅读(111) 评论(0) 推荐(0) 编辑
摘要: 归并排序 1. 把 2 个及以上的有序子序列,"归并" 成一个有序序列 2. 内部排序中,多采用 二路 归并排序 3. 整个归并排序只需要 logN 躺 基本思想: 1. 切分步骤:先将大数组,拆分成 2 组,然后 2 组再拆分,直到元素个数为 1, 2. 合并步骤:接着两个 单一元素比较合并,合并 阅读全文
posted @ 2020-04-03 15:03 彭尼玛 阅读(107) 评论(0) 推荐(0) 编辑
摘要: 选择排序 _1. 简单选择排序_ 时间复杂度 O(n^2) 思路: 从头到尾扫描数列,找出最小的,和第一个交换,然后剩余的重复如此 js let len = list.length; //创建堆 function CreatHeap(list) { let i; for (i = Math.floo 阅读全文
posted @ 2020-04-03 15:02 彭尼玛 阅读(179) 评论(0) 推荐(0) 编辑
摘要: 交换排序 通过比较关键字,然后交换 _1. 冒泡排序_ 时间复杂度 O(n^2) 思路: 1. 两两比较,大的那个放在最右边,比较到最末尾之后,最右边 即 最大 2. 第二轮的比较中,将最大的排开,即 len = 1,后面几轮也同样如此 3. 最大的那个就会像冒泡一样,一个一个像最右靠 _2. 快速 阅读全文
posted @ 2020-04-03 14:57 彭尼玛 阅读(128) 评论(0) 推荐(0) 编辑
摘要: 插入排序 在一个有序的数据序列中,插入一个数,且插入后一样有序,时间复杂度 O(n^2),适用于少量数据的排序 _1. 直接插入排序_ 时间复杂度 O(n^2) 思路: 类似抓扑克牌 3 2 7 4 1 = 2 3 7 4 1 = 2 3 4 7 1 = 1 2 3 4 7 把前面的数当成是有序的, 阅读全文
posted @ 2020-04-03 14:46 彭尼玛 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 排序 1. 排序成有序的顺序表则可以采用查找效率较高的二分法(折半查找法),而无序只能进行顺序查找 2. 排序两大类: 内部排序:待排序内容不大可以存放再计算机内存中进行排序 外部排序:带排序内容很大,需要借助外存进行排序,一般会用归并排序,因为归并不需要一次性把所有数据都存入内存 3. 内部排序: 阅读全文
posted @ 2020-04-03 14:44 彭尼玛 阅读(140) 评论(0) 推荐(0) 编辑