原文:线性时间选择

线性时间选择问题:给定线性序集中n个元素和一个整数k, k n,要求找出这n个元素中第k小的元素, 这里给定的线性集是无序的 。 随机划分线性选择 线性时间选择随机划分法可以模仿随机化快速排序算法设计。基本思想是对输入数组进行递归划分,与快速排序不同的是,它只对划分出的子数组之一进行递归处理。 程序如下: 输出如下: 程序解释:利用随机函数产生划分基准,将数组a p:r 划分成两个子数组a p: ...

2020-11-07 11:42 0 389 推荐指数:

查看详情

线性时间选择算法

在一个由 n 个元素组成的集合中,第 i 个顺序统计量(order statistic)是该集合中第 i 小的元素。也就是说,最小值是第 1 个顺序统计量(i = 1),最大值是第 n 个顺序统计量( ...

Thu Jul 24 06:42:00 CST 2014 1 5974
线性时间选择算法

线性时间选择算法 顾名思义,“线性时间选择”就是“选择问题”的“线性时间”算法。 1. 选择问题 元素选择问题:给定一个能够线性排序的集合(该集合中有 n 个元素)和 一个整数 k(\(1 \le k \le n\)) ,找出这 n 个元素中第 k 小的元素。 时间下界 ...

Tue Mar 24 07:08:00 CST 2020 2 4840
[转]【分治法】线性时间选择

线性时间选择问题:给定线性序集中n个元素和一个整数k,1≤k≤n,要求找出这n个元素中第k小的元素,(这里给定的线性集是无序的)。 1、随机划分线性选择 线性时间选择随机划分法可以模仿随机化快速排序算法设计。基本思想是对输入数组进行递归划分,与快速排序 ...

Sat Jan 06 22:30:00 CST 2018 0 4604
选择中位数-线性时间算法

即为中位数(两位则取平均值),时间复杂度 O(N) * N;当然,一次遍历中我们可以同时获取到最大值和 ...

Sun Jan 19 22:40:00 CST 2020 0 1272
最坏情况为线性时间选择算法

算法select可以确认一个有n>1个不同元素的输入数组中第i小的元素。(如果n=1,则select只返回它的唯一输入数值作为第i小的元素。) 1.将输入数组的n个元素划分为n/5(向下取整) ...

Sat Sep 02 22:59:00 CST 2017 0 1194
C++分治策略实现线性时间选择

问题描述: 给定线性序集中n个元素和一个整数k,1≤k≤n,要求找出这n个元素中第k小的元素,即如果将这n个元素依其线性序排列时,排在第k个的元素即为要找到元素。 细节须知:(与之前的随笔相比) (1)设置了对于程序运行次数的手动输入设定 (2)取消了文件的读入,直接生成随机数进行排序查找 ...

Fri Oct 18 01:44:00 CST 2019 2 290
舍伍德算法之线性时间选择问题

一.概念引入 设A是一个确定性算法,当它的输入实例为x时所需的计算时间记为tA(x)。设Xn是算法A的输入规模为n的实例的全体,则当问题的输入规模为n时,算法A所需的平均时间为。这显然不能排除存在x∈Xn使得的可能性。希望获得一个随机化算法B,使得对问题的输入规模为n的每一个实例 ...

Fri Nov 20 19:13:00 CST 2020 0 398
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM