原文:锦标赛排序(胜者树,记录胜者)

百度一道面试题说起,题目是这样的:给出一个长度是N的数组,现在要找出最小的两个元素,最少要多少次比较。 分析: 如果找出 个最小的,比较次数无疑是 n , 如果用选择排序,再取选择第二个最小的又得比较n 次。这种寻找的办法其实是可以优化的,在第一次寻找最小元素过程中,其实我们已经比较了很多元素了,那么为什么不利用前面比较的结果来寻找第二个最小的呢。 这用到锦标赛排序的方法,这样就可以再使用 lo ...

2013-09-15 20:11 1 8457 推荐指数:

查看详情

树形选择排序(锦标赛排序)

介绍:   树形选择排序(Tree Selection Sort),又称锦标赛排序(Tournament Sort),是一种按锦标赛的思想进行选择排序的方法。简单选择排序花费的时间主要在比较上,每次都会进行很多重复的比较,造成浪费时间。锦标赛排序就是通过记录比较结果,减少比较次数,从而降 ...

Wed May 12 07:31:00 CST 2021 0 219
胜者和败者

胜者和败者都是完全二叉树,是树形选择排序的一种变型。每个叶子结点相当于一个选手,每个中间结点相当于一场比赛,每一层相当于一轮比赛。 不同的是,胜者的中间结点记录的是胜者的标号;而败者的中间结点记录的败者的标号。 胜者与败者可以在log(n ...

Mon Nov 26 04:58:00 CST 2012 0 4243
算法--胜者-败者

胜者与败者 胜者和败者都是完全二叉树,是树形选择排序的一种变型。每个叶子结点相当于一个选手,每个中间结点相当于一场比赛,每一层相当于一轮比赛。 不同的是,胜者的中间结点记录的是胜者的标号;而败者的中间结点记录的败者的标号。 胜者 ...

Sat Dec 02 01:33:00 CST 2017 0 1065
最小堆、胜者和败者

前言 本文介绍三种外部排序算法:最小堆、胜者和败者,以及为什么外部排序往往用败者。 最小堆 最小堆有以下特点: 1、最小堆是一颗完全二叉树 2、每个父节点的值总是小于等于左右孩子节点的值 3、每个节点的子树都是一个堆 示例图: 堆常用一维数组结构存储,增删改查的时间复杂度都是 ...

Sun Sep 19 00:16:00 CST 2021 0 199
常见的五类排序算法图解和实现(选择类:简单选择排序锦标赛排序,树形选择排序,堆排序

选择类的排序算法 简单选择排序算法 采用最简单的选择方式,从头到尾扫描待排序列,找一个最小的记录(递增排序),和第一个记录交换位置,再从剩下的记录中继续反复这个过程,直到全部有序。 具体过程: 首先通过 n –1 次关键字比较,从 n 个记录中找出关键字最小的记录,将它与第一个记录交换 ...

Tue Mar 24 19:05:00 CST 2015 0 10008
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM