排序算法
Terry_dong
我只是个搬运工
展开
-
模型评价(一) AUC详细概述
问题:AUC是什么 AUC能拿来干什么 AUC如何求解(深入理解AUC)AUC是什么混淆矩阵(Confusion matrix)混淆矩阵是理解大多数评价指标的基础,毫无疑问也是理解AUC的基础。丰富的资料介绍着混淆矩阵的概念,这里用一个经典图来解释混淆矩阵是什么。显然,混淆矩阵包含四部分的信息:True negative(TN),称为真阴率,表明实际是负样本预测成负样本的样...原创 2020-04-10 15:28:38 · 1293 阅读 · 0 评论 -
经典查找算法 - 二分查找
二分查找又称为折半查找,仅适用于事先已经排好序的顺序表。其查找的基本思路:首先将给定值K,与表中中间位置元素的关键字比较,若相等,返回该元素的存储位置;若不等,这所需查找的元素只能在中间数据以外的前半部分或后半部分中。然后在缩小的范围中继续进行同样的查找。如此反复直到找到为止。算法如下:因为二分查找需要方便地定位查找区域,所以适合二分查找的存储结构必须具有随机存储的特性。因此,该查找方法仅适合原创 2017-04-12 21:45:10 · 964 阅读 · 0 评论 -
经典排序算法 - 基数排序Radix sort
原理类似桶排序,这里总是需要10个桶,多次使用首先以个位数的值进行装桶,即个位数为1则放入1号桶,为9则放入9号桶,暂时忽视十位数例如待排序数组[62,14,59,88,16]简单点五个数字分配10个桶,桶编号为0-9,以个位数数字为桶编号依次入桶,变成下边这样| 0 | 0 | 62 | 0 | 14 | 0 | 16 | 0 | 8原创 2017-04-12 01:05:11 · 615 阅读 · 0 评论 -
经典排序算法 - 归并排序Merge sort
经典排序算法 - 归并排序Merge sort经典排序算法 - 归并排序Merge sort原理,把原始数组分成若干子数组,对每一个子数组进行排序,继续把子数组与子数组合并,合并后仍然有序,直到全部合并完,形成有序的数组举例无序数组[6 2 4 1 5 9]先看一下每个步骤下的状态,完了再看合并细节第一步 [6 2 4 1 5原创 2017-04-11 17:31:07 · 499 阅读 · 0 评论 -
经典排序算法 - 堆排序Heap sort
经典排序算法 - 堆排序Heap sort堆排序有点小复杂,分成三块第一块,什么是堆,什么是最大堆第二块,怎么将堆调整为最大堆,这部分是重点第三块,堆排序介绍第一块,什么是堆,什么是最大堆什么是堆这里的堆(二叉堆),指得不是堆栈的那个堆,而是一种数据结构。堆可以视为一棵完全的二叉树,完全二叉树的一个“优秀”的性质是,除了最原创 2017-04-10 22:43:59 · 509 阅读 · 0 评论 -
经典排序算法 - 冒泡排序Bubble sort
经典排序算法 - 冒泡排序Bubble sort原理是临近的数字两两进行比较,按照从小到大或者从大到小的顺序进行交换,这样一趟过去后,最大或最小的数字被交换到了最后一位,然后再从头开始进行两两比较交换,直到倒数第二位时结束,其余类似看例子例子为从小到大排序,原始待排序数组| 6 | 2 | 4 | 1 | 5 | 9 |第一趟排序(外循环原创 2017-04-10 22:10:48 · 380 阅读 · 0 评论 -
经典排序算法 - 选择排序Selection sort
顾名思意,就是直接从待排序数组里选择一个最小(或最大)的数字,每次都拿一个最小数字出来,顺序放入新数组,直到全部拿完再简单点,对着一群数组说,你们谁最小出列,站到最后边然后继续对剩余的无序数组说,你们谁最小出列,站到最后边再继续刚才的操作,一直到最后一个,继续站到最后边,现在数组有序了,从小到大举例先说看每步的状态变化,后边介绍细节,现有无序数组[6原创 2017-04-10 21:56:37 · 566 阅读 · 0 评论 -
经典排序算法 - 希尔排序Shell sort
经典排序算法 - 希尔排序Shell sort希尔排序Shell Sort是基于插入排序的一种改进,同样分成两部分,第一部分,希尔排序介绍第二部分,如何选取关键字,选取关键字是希尔排序的关键第一块希尔排序介绍准备待排数组[6 2 4 1 5 9]首先需要选取关键字,例如关键是3和1(第一步分成三组,第二步分成一组),那么待排数组分成了以下三个虚拟组:原创 2017-04-09 17:18:05 · 514 阅读 · 0 评论 -
经典排序算法 - 快速排序Quick sort
快速排序Quick sort原理:通过一趟扫描将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。例如:如无序数组[6 2 4 1 5 9]a),先把第一项[6]取出来,用[6]依次与其余项进行比较,如果比[6]小就放[6]原创 2017-04-09 12:40:34 · 664 阅读 · 2 评论 -
经典排序算法 - 插入排序Insertion sort
排序算法---插入排序基本思想插入排序的思想有点像打扑克抓牌的时候,我们插入扑克牌的做法。想象一下,抓牌时,我们都是把抓到的牌按顺序放在手中。因此每抓一张新牌,我们都将其插入到已有的排好序的手牌当中,注意体会刚才的那句话。也就是说,插入排序的思想是,将新来的元素按顺序放入一个已有的有序序列当中。举个例子可能更容易理解一些,假设有这样一系列数字: 8 2 4 9 3原创 2017-04-09 11:54:58 · 725 阅读 · 0 评论