一、區間完全覆蓋問題 問題描述:給定一個長度為m的區間,再給出n條線段的起點和終點(注意這里是閉區間),求最少使用多少條線段可以將整個區間完全覆蓋。 樣例:一個長度為8的區間,可選的線段有[2,6],[1,4],[3,6],[3,7],[6,8],[2,4],[3,5]。 求解過程 ...
一 區間完全覆蓋問題 題目 給定一個長度為m的區間,再給出n條線段的起點和終點 注意這里是閉區間 ,求最少使用多少條線段可以將整個區間完全覆蓋。 解析 先將所有線段按起點從小到大排序。排完序后,枚舉每一個線段 被其它線段包含的線段不用考慮,因為很明顯包含它的線段比它更優 ,將其作為最左端的線段, 再在剩下的左端點小於等於最左端的線段的右端點的線段中 若沒有則無解 ,找到右端點最大的一個線段,即貪心 ...
2019-07-08 12:45 1 622 推薦指數:
一、區間完全覆蓋問題 問題描述:給定一個長度為m的區間,再給出n條線段的起點和終點(注意這里是閉區間),求最少使用多少條線段可以將整個區間完全覆蓋。 樣例:一個長度為8的區間,可選的線段有[2,6],[1,4],[3,6],[3,7],[6,8],[2,4],[3,5]。 求解過程 ...
貪心算法 思想:什么是貪心算法,什么算得上是貪心 貪心算法(又稱貪婪算法)是指,在對問題求解時,總是做出在當前看來是最好的選擇。也就是說,不從整體最優上加以考慮,只做出在某種意義上的局部最優解。貪心算法不是對所有問題都能得到整體最優解,關鍵是貪心策略的選擇,選擇的貪心策略 ...
題目內容: 設x1,x2,... ,xn是實直線上的n個點。用固定長度的閉區間覆蓋這n個點,至少需要多少個這樣的固定長度閉區間?設計求解此問題的有效算法。對於給定的實直線上的n個點和閉區間的長度k,編程計算覆蓋點集的最少區間數。 輸入格式: 輸入數據的第一行有2個正整數n和k,表示有n ...
基於貪心算法的幾類區間覆蓋問題: (1)區間完全覆蓋問題問題描述:給定一個長度為m的區間,再給出n條線段的起點和終點(注意這里是閉區間),求最少使用多少條線段可以將整個區間完全覆蓋樣例:區間長度8,可選的覆蓋線段[2,6],[1,4],[3,6],[3,7],[6,8],[2,4],[3,5 ...
(1)區間完全覆蓋問題 問題描述:給定一個長度為m的區間,再給出n條線段的起點和終點(注意這里是閉區間),求最少使用多少條線段可以將整個區間完全覆蓋 樣例:區間長度8,可選的覆蓋線段[2,6],[1,4],[3,6],[3,7],[6,8],[2,4],[3,5] 解題過程: 1. ...
題目描述 設x 1 , x 2,... , x n是實直線上的n個點。用固定長度的閉區間覆蓋這n個點,至少需要多少個這樣的固定長度閉區間?設計解此問題的有效算法,並證明算法的正確性。 編程任務: 對於給定的實直線上的n個點和閉區間的長度k,編程計算覆蓋 ...
什么是貪心算法呢?貪心算法可以認為是動態規划算法的一個特例,相比動態規划,使用貪心算法需要滿足更多的條件(貪心選擇性質),但是效率比動態規划要高。 比如說一個算法問題使用暴力解法需要指數級時間,如果能使用動態規划消除重疊子問題,就可以降到多項式級別的時間,如果滿足貪心選擇性質,那么可以進一步降低 ...
一、線段覆蓋 n個開區間(ai,bi),選擇盡量多個區間,使得這些區間兩兩不相交 右端點排序(<)兼顧左端點(>),再從左到右遇到不相交的就選 二、區間選點 n個閉區間[ai,bi],選擇盡量少的點,使得每個區間至少有一個點 右端點排序(<)兼顧左端 ...