分治法解决问题分为三步走,即分、治、合。下面列出了几种操作, 请按分、治、合顺序选择正确的表述。(1)将各个子问题的解合并为大问题的解,(2)将问题分解为子问题,(3)将各个子问题合并为大问题。(4)求各个子问题的解,(5)将问题分解为可重复的子问题。
A: (5)(4)(1)
B: (2)(4)(1)
C: (2)(1)(3)
D: (5)(1)(3)
A: (5)(4)(1)
B: (2)(4)(1)
C: (2)(1)(3)
D: (5)(1)(3)
举一反三
- 设问题P的输入规模是n,下述三个算法是求解P的不同的分治算法. 算法1:在常数时间将原问题划分为规模减半的5个子问题,递归求解每个子问题,最多用线性时间将子问题的解综合而得到原问题的解. 算法2:先递归求解2个规模为n-1的子问题,最多用常量时间将子问题的解综合得到原问题的解. 算法3:在常数时间将原问题划分为规模n/3的9个子问题,递归求解每个子问题,最多用[img=53x28]18039e0e50c75e0.png[/img]时间将子问题的解综合得到原问题的解. 要求在上述三个算法中选择最坏情况下时间复杂度最低的算法,需要选择哪个算法? A: 1 B: 2 C: 3 D: 都不对
- 设问题P的输入规模是n,下述三个算法是求解P的不同的分治算法. 算法1:在常数时间将原问题划分为规模减半的5个子问题,递归求解每个子问题,最多用线性时间将子问题的解综合而得到原问题的解. 算法2:先递归求解2个规模为n-1的子问题,最多用常量时间将子问题的解综合得到原问题的解. 算法3:在常数时间将原问题划分为规模n/3的9个子问题,递归求解每个子问题,最多用[img=46x27]1802f9091f5f7b4.png[/img]时间将子问题的解综合得到原问题的解. 要求在上述三个算法中选择最坏情况下时间复杂度最低的算法,需要选择哪个算法? A: 1 B: 2 C: 3 D: 都不对
- 设问题P的输入规模是n,下述三个算法是求解P的不同的分治算法. 算法1:在常数时间将原问题划分为规模减半的5个子问题,递归求解每个子问题,最多用线性时间将子问题的解综合而得到原问题的解. 算法2:先递归求解2个规模为n-1的子问题,最多用常量时间将子问题的解综合得到原问题的解. 算法3:在常数时间将原问题划分为规模n/3的9个子问题,递归求解每个子问题,最多用[img=53x28]18039348c931f2c.png[/img]时间将子问题的解综合得到原问题的解. 要求在上述三个算法中选择最坏情况下时间复杂度最低的算法,需要选择哪个算法? A: 1 B: 2 C: 3 D: 都不对
- 设问题P的输入规模是n,下述三个算法是求解P的不同的分治算法. 算法1:在常数时间将原问题划分为规模减半的5个子问题,递归求解每个子问题,最多用线性时间将子问题的解综合而得到原问题的解. 算法2:先递归求解2个规模为n-1的子问题,最多用常量时间将子问题的解综合得到原问题的解. 算法3:在常数时间将原问题划分为规模n/3的9个子问题,递归求解每个子问题,最多用[img=53x28]1802f9097d54882.png[/img]时间将子问题的解综合得到原问题的解. 要求在上述三个算法中选择最坏情况下时间复杂度最低的算法,需要选择哪个算法? A: 1 B: 2 C: 3 D: 都不对
- 设问题P的输入规模是n,下述三个算法是求解P的不同的分治算法. 算法1:在常数时间将原问题划分为规模减半的5个子问题,递归求解每个子问题,最多用线性时间将子问题的解综合而得到原问题的解. 算法2:先递归求解2个规模为n-1的子问题,最多用常量时间将子问题的解综合得到原问题的解. 算法3:在常数时间将原问题划分为规模n/3的9个子问题,递归求解每个子问题,最多用O([img=18x22]1803a06b0998bb6.png[/img])时间将子问题的解综合得到原问题的解. 要求在上述三个算法中选择最坏情况下时间复杂度最低的算法,需要选择哪个算法? A: 2 B: 3 C: 都不对 D: 1