排序比较指标

衡量两个概率分布之间的差异性的指标 总结一下衡量两个概率分布之间的差异性的指标:KL散度(Kullback–Leibler divergence、JS散度(Jensen-Shannon divergence)、交叉熵(Cross Entropy)、Wasserstein距离 阅读详情

衡量两个次序的差异的指标

1. Fitness

F = 1 Z ∑ j w j α ( ∣ p i − q j ∣ + 1 ) + ( 1 − α ) p i F = \frac{1}{Z} \sum_j \frac{w_j}{\alpha (|p_i - q_j|+1) + (1-\alpha) p_i} F=Z1​j∑​α(∣pi​−qj​∣+1)+(1−α)pi​wj​​

其中:

  • p j p_j pj​: 待排序中第 j j j 条结果的位置
  • q j q_j qj​: 待测排序的第 j j j 条结果在标准排序中的位置
  • w j w_j wj​: 标准排序中位置 j j j 上的权重
  • Z Z Z: 归一化因子

2. Kendall tau distance (wikipedia)

K = 2 N ( N − 1 ) ∑ i = 1 N − 1 ∑ j < i N k ( i , j ) K = \frac{2}{N(N-1)} \sum_{i=1}^{N-1} \sum_{j<i}^N k(i,j) K=N(N−1)2​i=1∑N−1​j<i∑N​k(i,j)

where

k ( i , j ) = { 0 (if  i ,  j  is in same order) 1 (if  i ,  j  is not in same order) k(i,j) = \begin{cases} 0 & \text{(if $i$, $j$ is in same order)} \\ 1 & \text{(if $i$, $j$ is not in same order)} \end{cases} k(i,j)={01​(if i, j is in same order)(if i, j is not in same order)​

K K K 的取值范围是 [ 0 , 1 ] [0,1] [0,1],两种顺序完全相同时为 0 0 0,完全相反时为 1 1 1.

3. NDCG (wikipedia)

两种定义(第一个有改动):
N D C G = 1 Z ∑ j = 1 N r j log ⁡ 2 ( 1 + j ) NDCG = \frac{1}{Z} \sum_{j = 1}^N \frac{r_j}{\log_2 (1+j)} NDCG=Z1​j=1∑N​log2​(1+j)rj​​

N D C G = 1 Z ∑ j = 1 N 2 r j − 1 log ⁡ 2 ( 1 + j ) NDCG = \frac{1}{Z} \sum_{j = 1}^N \frac{2^{r_j}-1}{\log_2 (1+j)} NDCG=Z1​j=1∑N​log2​(1+j)2rj​−1​

  • r j r_j rj​: 第 j j j 条结果的评分等级
  • Z Z Z: 归一化因子,理想最大值

4. AUC(wikipedia)

数据样例

  • y y y: 正负样本标记,预测目标, $ y \in {0, 1} $
  • s s s: 预测分数 score
  • r r r:按 score 排序后的顺序标记 rank
  • m , n m, n m,n:正负样本个数

| score|0.86|0.81|0.73|0.66|0.52|0.43|0.36|0.31|0.26 |
| -------- | :-----: | ----: |
| rank | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 |
| y | 1| 1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 |

ROC曲线

  • ROC:receiver operating characteristic curve。
  • 横坐标:FP (false positive),纵坐标:TF(True positive)。
  • 遍历分类器阈值,可得到一系列不同的 (FP,TP) ,这些点构成的曲线即为ROC。
  • 等效于,在排序好的数据列表中,从左向右扫过score。若将当前扫过的位置作为分类线,当前 score 作为分类阈值,则每个位置对应一个 (FP, TP) 值对。FP、TP 分别等于当前位置左侧的 y = 1 , y = 0 y=1, y=0 y=1,y=0 的个数。
    ( 0 , 0 ) , ( 0 , 1 ) , ( 0 , 2 ) , ( 1 , 2 ) , ( 1 , 3 ) , ( 1 , 4 ) , ( 2 , 4 ) , ( 2 , 5 ) , ( 3 , 5 ) , ( 4 , 5 ) (0,0), (0,1), (0,2), (1,2), (1,3), (1,4), (2, 4), (2,5), (3,5), (4,5) (0,0),(0,1),(0,2),(1,2),(1,3),(1,4),(2,4),(2,5),(3,5),(4,5)

AUC

AUC 即 ROC 曲线下的面积。5 种计算方式:

1,根据定义:遍历排好序的样本,每个样本画出ROC上的一个点。每遇一个正样本,纵轴升一个(TP++);每遇一个负样本,横轴加一个(FP++),同时累积面积增加TP。遍历完后,TP = m m m, FP = n n n,所得面积除以总面积 ( m ⋅ n m \cdot n m⋅n) 即为AUC。

只需遍历一次,复杂度为 O ( N ) O(N) O(N)

2,在按 score 排序的样本序列中,每个正样本之后的负样本的个数的和,除以 m ⋅ n m \cdot n m⋅n。

复杂度为 O ( N 2 ) O(N^2) O(N2)。

A U C = ∑ i + ∣ { s j − ∣ s j − < s i + } ∣ m ⋅ n AUC = \frac{\sum_{i_+} | \{ s_{j_-} |s_{j_-} < s_{i_+}\}|} {m \cdot n} AUC=m⋅n∑i+​​∣{sj−​​∣sj−​​<si+​​}∣​

3,方法2换个角度看,就是把正负样本之间两两组合,其中正样本 score 大于负样本 score 的组合的个数(score相等的算0.5) 。结果再除以 m ⋅ n m \cdot n m⋅n

A U C = ∣ { ( s i + , s j − ) ∣ s i + > s j − } ∣ m ⋅ n AUC = \frac{|\{(s_{i_+}, s_{j_-}) | s_{i_+} > s_{j_-}\}|}{m \cdot n} AUC=m⋅n∣{(si+​​,sj−​​)∣si+​​>sj−​​}∣​

4,计算正样本的 rank 的和,然后按下式计算

A U C = ∑ r i y i − m ( m + 1 ) / 2 m ⋅ n AUC = \frac{\sum r_i y_i - m (m + 1) / 2}{m \cdot n} AUC=m⋅n∑ri​yi​−m(m+1)/2​

5,区块方法。以上方法都是对单例计算的,无法计算 AUC_UP。将值相近的 score 聚合成区块,用一个得分 t i t_i ti​ 表示,统计每个区块 i i i 中的正负例个数 m i , n i m_i, n_i mi​,ni​,形成压缩的新数据元: ( t i , m i , n i ) (t_i, m_i, n_i) (ti​,mi​,ni​)。按 t i t_i ti​ 排序后,再按 1 中的方法计算累积面积(用梯形面积近似,所以每次增加面积是 ( T P + m i / 2 ) ⋅ n i (TP + m_i/2) \cdot n_i (TP+mi​/2)⋅ni​)。每次纵轴、横轴增加的量分别为 m i , n i m_i, n_i mi​,ni​。

计算 AUC_UP 时,只需将序列按新数据元的经验概率 m i / ( m i + n i ) m_i/(m_i+n_i) mi​/(mi​+ni​) 排序,再按相同方法计算 AUC。

计算方法的的等效性

2 ⇒ \Rightarrow ⇒ 1 方法的等效性:

方法 2 中,每个正例之后的负例的个数,等于在 ROC 曲线中,该正例点向右的长度。即每个正例对 ROC 下的面积的贡献,是其对应的点向右的宽度为1的横带。这是因为正例的出现只使 ROC 曲线在纵向上增长。

2 ⇒ \Rightarrow ⇒ 4 方法的等效性:

对于第一个正例,其后的负样本的个数为 9 − m 9-m 9−m。对于第 i + i_+ i+​ 个正例,其后共有 r i + − 1 r_{i+} - 1 ri+​−1 个样本,其中正例有 m − i m-i m−i 个,所以其后的负例个数是 r i + − 1 − ( m − i + ) r_{i_+} - 1 - (m-i_+) ri+​​−1−(m−i+​)。所以求和过程做以下整理后,即与方法 3 相同。

∑ i + = 1 m [ r i + − 1 − ( m − i + ) ] = ∑ i + = 1 m r i + − m − m 2 + ∑ i + = 1 m i + = ∑ i + = 1 m r i + − m ( m + 1 ) / 2 = ∑ i r i y i − m ( m + 1 ) / 2 \sum_{i_+ = 1}^m [ r_{i+} - 1 - (m-i_+) ] = \sum_{i_+ = 1}^m r_{i+} - m - m^2 + \sum_{i_+ = 1}^m i_+ \\ \qquad = \sum_{i_+ = 1}^m r_{i+} - m (m+1)/2 \\ \qquad = \sum_i r_i y_i - m (m+1)/2 i+​=1∑m​[ri+​−1−(m−i+​)]=i+​=1∑m​ri+​−m−m2+i+​=1∑m​i+​=i+​=1∑m​ri+​−m(m+1)/2=i∑​ri​yi​−m(m+1)/2

5 ⇒ \Rightarrow ⇒ 1 方法的等效性:

单数据元中,正负例 y i = 0 , 1 y_i=0,1 yi​=0,1 分别对应batch方法中 ( m i , n i ) (m_i, n_i) (mi​,ni​) 等于 ( 1 , 0 ) , ( 0 , 1 ) (1, 0), (0,1) (1,0),(0,1)。所以方法 1 是 4 的特例,可从实现代码中看出。

示例代码

#!/usr/bin/env python
#!encoding:utf-8

s = [0.86, 0.81, 0.73, 0.66, 0.52, 0.43, 0.36, 0.31, 0.26]
y = [1,    1,    0,    1,    1,    0,    1,    0,    0]

ll = sorted([(s[i], y[i]) for i in range(len(s))], key=lambda x: -x[0])

def auc_1(ll):
    m, n, area = 0, 0, 0
    for s, y in ll:
        if y == 1:
            m += 1
        if y == 0:
            n += 1
            area += m
    return 1. * area / (m * n)

def auc_2(ll):
    m, n, cnt = 0, 0, 0. 
    for i, (s, y) in enumerate(ll): 
        if y == 0: 
            n += 1
            continue 
        if y == 1: 
            m += 1
            for j in range(i, len(ll)): 
                if ll[j][1] == 0: 
                    cnt += 1
    return cnt / (m * n) 

def auc_3(ll):
    m, n, cnt = 0, 0, 0
    for i in range(len(ll)):
        if ll[i][1] == 1:
            m += 1
        elif ll[i][1] == 0:
            n += 1
        for j in range(i+1, len(ll)):
            if ll[i][0] == ll[j][0]:
                    cnt += 0.5
            elif ll[i][0] > ll[j][0] and ll[i][1] > ll[j][1]:
                cnt += 1
            if ll[i][0] < ll[j][0] and ll[i][1] < ll[j][1]:
                cnt += 1
    return 1. * cnt / (m * n)

def auc_4(ll):
    m, n, q = 0, 0, 0
    for i, (s, y) in enumerate(ll):
        if y == 1:
            m += 1
            q += len(ll) - i
        if y == 0:
            n += 1
    auc = 1. * ( q - m * (m + 1) / 2) / (m * n)
    return auc

def for_auc_5(score_np): 
    m, n, area = 0, 0, 0.  
    for t, [mi, ni] in score_np: 
        area += (m + mi /2.)*ni
        m += mi
        n += ni
    return area / (m * n)  

def auc_5(ll):
    score_block = {}      
    for s, y in ll: 
        t = round(s, 5)   # 粗粒化。省略则与方法1相同。粒度越粗AUC_UP越低
        if t in score_block:
            score_block[t][0] += y
            score_block[t][1] += 1-y
        else:
            score_block[t] = [y, 1-y]
    score_np = sorted(score_block.items(), key = lambda x: -x[0])
    auc = for_auc_5(score_np) 
    score_np = sorted(score_block.items(), key = lambda x: -x[1][0]/(x[1][0]+x[1][1]))
    auc_up = for_auc_5(score_np) 
    return auc, auc_up 

ll.sort(key = lambda x: -x[0]) 

print "auc1:", auc_1(ll)
print "auc2:", auc_2(ll)
print "auc3:", auc_3(ll)
print "auc4:", auc_4(ll)
print "auc5:", auc_5(ll)
SRA:基于多指标的多目标优化随机排序算法 SRA:基于多指标的多目标优化随机排序算法 【点击链接查看更多:点此跳转】 【点击链接查看更多:点此跳转】 【点击链接查看更多:点此跳转】 参考文献 《Bingdong Li, Student Member , IEEE, Ke Tang, Senior Member , IEEE, Jinlong Li, Member , IEEE, and Xin Yao , Fellow, IEEE:Stochastic Ranking Algorithm for Many-Objective Optimizati 阅读详情

相关推荐

通达信排序指标完全指南:从.401到多股对比的实战应用

本文深入解析通达信排序指标的核心功能与实战应用,从基础的.401快捷键操作到高级的多维度对比筛选。文章详细阐述了排序指标与主副图指标的本质区别,指导用户如何编写有效的排序公式,并分享利用排序指标进行板块轮动追踪与动态监控的高阶策略,旨在帮助投资者大幅提升选股效率与决策精度。

weixin_28363123的博客 472

排序评估指标——NDCG和MAP

用实例理解NDCG和MAP

comli_cn的博客 8844

55、关键绩效指标的确定与选择

本文介绍了如何基于网络分析法(ANP)科学地确定和选择企业关键绩效指标(KPIs),弥补传统层次分析法(AHP)在处理反馈与依赖关系上的不足。文章详细阐述了绩效指标选择的相关性、可靠性、可比性和可理解性四大标准,并通过意大利一家沙发制造企业的实际案例,展示了从模型构建、成对比较矩阵、超级矩阵形成到替代方案优先级排序的完整ANP应用流程。结果表明,‘过程中提出的索赔数量’为该制造场景下最重要的绩效指标。该方法为企业提升绩效评估的准确性与决策有效性提供了有力支持。

net55的博客 43

搜索排序评价指标

信息检索中常用的评价指标:MAP,NDCG,ERR,F-measure 一. NDCG: Normalized Discounted Cumulative Gain; rel是相关度(Gain);i是排名位置(Discounted), 加起来就是Cumulative N是Normalized; (Query是同一个p,但是分子(当前列表)和分母(最优列表)的内容可能不同) ...

smartcat2010的博客 1987

排序(ranker)模型里面常用的评价指标梳理

1. 写在前面 最近的任务需要用到排序性的模型了,也就是LearningToRank的排序算法,关于这种排序算法, 预测的目标并不是点击或者不点击这样的二分类问题, 而是一个列表的整体排列顺序,是一种list-wise的方法,有时候更加符合推荐的场景。之前也整理过一篇文章, 具体的可以参考。 说到排序结果, 必然需要有指标用于评价排序结果的好坏,所以这篇文章的话主要是整理排序里面用到的常用评价指标,比如我们常听到的MRR(Mean Reciprocal Rank), MAP(Mean Average Pre

Miracle8070 7543

排序算法的评估指标ranking-measures-and-loss-functions-in-learning-to-rank

该文档论述了排序算法和推荐系统的评估标准NDCG和MAP的原理和应用

IR的评价指标-MAP,MRR和NDCG的形象理解

一 、MAP(Mean Average Precision): 单个主题的平均准确率是每篇相关文档检索出后的准确率的平均值。主集合的平均准确率(MAP)是每个主题的平均准确率的平均值。MAP 是反映系统在全部相关文档上性能的单值指标。系统检索出来的相关文档越靠前(rank 越高),MAP就可能越高。如果系统没有返回相关文档,则准确率默认为0。 只有1和0,1代表相关,0代表不相关。 例如:假...

anshuai_aw1的博客 1万+

Arxml文件可视化:当汽车软件架构遇见交互式设计工具

本文探讨了Arxml文件在汽车电子系统开发中的可视化技术,结合AUTOSAR架构标准,介绍了如何利用现代Web技术构建交互式设计工具。通过三维组件关系图、动态数据流展示和版本对比等功能,显著提升开发效率和架构评审质量,适用于MBD和ASPICE开发流程。

weixin_29050271的博客 428

排序算法的指标性能比较

表一 排序方法 平均时间复杂度 最好时间复杂度 最坏时间复杂度 辅助空间 稳定性 冒泡排序 O(n2) O(n) O(n2) O(1) 稳定 简单选择排序 O(n2) O(n2) O(n2) O(1) 稳定 直接插入排序 O(n2) O(n) O(n2) O(1) 稳定 希尔排序   O(nlogn)~...

weixin_30687811的博客 367

【RS】哨兵系列数据下载(哨兵2号Sentinel-2波段介绍、下载)

以哨兵二号为示例,分享如何下载欧空局的哨兵系列数据

Remote Sensing迷途小书童 1万+

从零开始用STM32驱动RGB屏:配置PCLK、DE同步信号的避坑指南

本文详细介绍了如何使用STM32驱动RGB接口LCD屏幕,重点解析了PCLK配置、同步信号极性和DE使能等关键参数的设置方法。通过实战代码示例和常见问题排查指南,帮助开发者避免常见配置错误,实现稳定的显示效果。特别针对800x480 IPS屏提供了优化建议和调试技巧。

sky77的博客 540

java list降序排序_JAVA对list集合进行排序Collections.sort()

对一个集合中的对象进行排序,根据对象的某个指标的大小进行升序或降序排序。代码如下:进行降序排列进行降序排列Collections.sort(list, new Comparator() {public int compare(ResultTypeDesc o1, ResultTypeDesc o2) {return o2.getRatio().compareTo(o1.getRatio());}}...

weixin_34893745的博客 4577

能量机关 STM32HAL库开发大疆A板WS2812B彩灯(PWM+DMA)

本文主要目的是为了制作RoboMaster比赛能量机关的灯条控制,模拟比赛场中大符,搭建出类似场地道具,以供视觉测试 使用的是RoboMaster开发板A型,芯片为STM32F427IIH6,使用的灯条为WS2812B。 采用PWM+DMA控制,使用CUBEMX配置底层,keil5编辑烧录代码 实现:一共五片扇叶,每片扇叶均实现流水灯+常亮颜色 参考文章在后面会标记出来

m0_51756449的博客 4292

数据结构:常用排序算法的比较(c++)

文章目录一、实验题目二、需求分析三、概要设计四、调试分析五、使用说明六、测试结果七、其他数据结构实例 一、实验题目 常用的排序算法有冒泡排序、直接插入排序、简单选择排序、快速排序、希尔排序、堆排序等。接下来通过编程逐步分析各种排序。 二、需求分析 [问题描述] 各种内部排序算法的时间复杂度分析结果只给出了算法执行时间的阶,或大概执行时间。试通过随机的数据比较各算法的关键字比较次数和关键字移动次数,以取得直观感受。 [基本要求] 对以下常用的内部排序算法进行比较:起泡排序、直接插入排序、简单选择排序、快速排序

pengmingjv的博客 3032

Abel逆变换及其求解方法

Abel逆变换常应用在轴对称的、光学薄的火焰、羽流或等离子体重建。

weixin_49783507的博客 8372

如何使用 ESP32 CAM 进行自动车牌识别 (ANPR)

用于提取 JSON 值并在 OLED 上显示文本的函数。有一个可用的函数,即 extractJsonStringValue 来提取字符串值。它是独立函数,但您仍然可以使用一些 JSON 库来执行相同的功能。

jkh920184196的博客 1304

算法基础:排序算法:7个常用的衡量指标

时间复杂度和空间复杂度是衡量算法的重要指标,对于排序算法这一特定算法,这篇文章整理了一些常见的基础性的指标,后续将以此为基础进行进一步的解释。

知行合一 止于至善 3234

OpenCV 实战篇——如何测算出任一副图片中的物体的实际尺寸?传感器尺寸与像元尺寸的关系?

本文介绍了通过相机图像测算物体实际尺寸的方法,重点分析了传感器参数与成像质量的关系。文章首先给出了物体实际尺寸的计算公式,涉及像素尺寸、距离、分辨率等参数。然后详细解析了传感器尺寸与像元尺寸的关系,指出相同分辨率下更大的传感器能获得更好的成像质量。此外还介绍了光学尺寸、像素尺寸对成像的影响,以及帧率的概念。最后提及了相机标定的重要性,并概述了从像素坐标系转换到世界坐标系的基本思路。这些知识为通过相机图像进行精确测量提供了理论基础。

程序员,他们想的是什么?他们想的永远都是技术,他们崇尚的也永远都是技术。 1337

java多个条件排序_java定制化排序,多个条件排序

方法针对的排序情况:有一个实体类命名为test,其中共有三个指标需要排序展示,one优先级》two优先级》three优先级在指标属性one一样的时候会查询two指标比较@org.junit.Testpublic void test() {List testList = new ArrayList<>();Test one = new Test(1300, 20, 12);testLis...

weixin_36142226的博客 1220

STM32F4 SPI FLASH(W25Q128)驱动详解(含DMA+完整读写擦除+低功耗)

本文实现了一款基于STM32 HAL库的SPI Flash驱动,以W25Q128为例,提供了完整的初始化、读写、擦除、ID读取等功能。驱动集成了DMA传输、超时保护、页对齐写入等特性,支持扇区擦除、整片擦除、页写入及跨页缓冲写入。代码结构清晰,易于移植到其他SPI Flash型号(如W25Q64、W25Q16等),适用于数据存储、固件升级、文件系统等嵌入式场景。

kevin1499的博客 96

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

通达信基本面比较排序公式

IF(主营业务利润率<20 AND 主营业务利润率>10,2,IF(主营业务利润率<10 AND 主营业务利润率>0,1,0))))))))));IF(每股收益<0.6 AND 每股收益>0.3,2,IF(每股收益<0.3 AND 每股收益>0,1,0))))))))));IF(资产报酬率<6 AND 资产报酬率>3,2,IF(资产报酬率<3 AND 资产报酬率>0,1,0))))))))));IF(每股收益<1.2 AND 每股收益>0.9,4,IF(每股收益<0.9 AND 每股收益>0.6,3,

gupengzhibiao的博客 849

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

五大排序的性能比较 java版

分别实现插入排序、选择排序、堆排序、合并排序、快速排序,以不同规模(100,1000,2000,5000,10000,100000个数据)的随机数作为测试数据集,分别设置比较操作计数器,验证各个算法随着测试数据集增加比较次数的变化趋势。

2301_78947898的博客 772

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

排序专题之4--稳定性 比较次数与交换次数

  在学习排序算法时,出于效率考虑,经常容易看到算法的稳定性、比较次数及交换次数研究。特别是考试或者公司笔试题,经常出现这样的题目。由于排序算法有很多种,平时提出大家才能说出个大概,但真要考查这些细节,估计很多人都说不准确。博主下决心写此文章,彻底探查清楚这些问题,与大家共享之。         首先说明稳定性是指相同元素在排序后相对位置保持不变。个人感觉稳定性的含义在于更广泛情形下,排序元素...

weixin_39804483的博客 2144

5-各种排序算法的总结

性能指标 稳定性:如果一个排序算法能够保留数组中重复元素的相对位置则可以称为是稳定的。 原地排序:如果在排序过程中,是直接在输入数组上进行操作(比较和交换)来完成排序的,则称为原地排序。 时间复杂度:交换和比较的次数随数组规模 N 增长的函数。 空间复杂度:需要额外的空间随数组规模 N 增长的函数。 各种排序算法的比较 算法 是否稳定 是否原地排序 时间复杂度 空间复杂度 备注 选择排序 否 是 N^2 1 插入排序 是 是 N~N^2 1 取决于输入元素的顺序 希尔排序 否

salted___fish的博客 173

c语言内部排序实验报告,内部排序算法比较实验报告(c语言版)

题目:编制一个演示内部排序算法比较的程序班级:姓名:学号:完成日期:一、需求分析1.本演示程序对以下6种常用的内部排序算法进行实测比较:起泡排序,直接插入排序,简单选择排序,快速排序,希尔排序,堆排序。2.待排序表的元素的关键字为整数。比较的指标为有关键字参加的比较次数和关键字的移动次数(关键字交换记为3次移动)。3.演示程序以以用户和计算机的对话方式执行,在计算机终端上显示提示信息,对随机数组进...

weixin_29035147的博客 1347
上一篇: FTRL 笔记
下一篇: boosting 方法
schwt
博客等级 码龄17年 1粉丝 13原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值