grahams-scan

    3熱度

    2回答

    我正在重寫有關凸包和Graham Scan的實現方法,並引起了我的注意,即每個人都使用堆棧。所以我想問一問爲什麼在算法中使用堆棧,使用堆棧有什麼好處?

    3熱度

    2回答

    我寫了格雷厄姆的掃描凸包算法的實現及測試數據我用了點 [(2.0,2.0),(4.0,2.0),(0.5,2.5),(3.0,3.5),(1.0,4.0),(0.0,4.0),(1.0,1.0),(3.0,2.5),(4.0,4.0),(3.5,1.5),(0.5,1.0)] 根據我的計劃凸包是 [(0.0,4.0),(1.0,4.0),(4.0,4.0),(3.0,2.5),(4.0,2.0

    0熱度

    1回答

    我是JavaScript新手,並且正在使用Google地圖API for javascript。 這是一個校舍,我們提供了一個工作腳本和一些php代碼來顯示地圖,獲取位置,更新位置等。 我們的任務是實現一個凸包算法。 這些是我有問題的東西: 某些對象的數據結構 如何顯示在地圖上的船體線一旦我計算他們 這是代碼; function convexHull(){ console.log("co

    0熱度

    1回答

    一個nonleft轉繼從Cormen的格雷厄姆的掃描算法的描述「算法導論」我發現了以下注釋: 通過檢查一個nonleft轉,而不僅僅是一個右轉彎時,此測試排除了在所得凸包的頂點處產生直角的可能性。我們不需要直角,因爲凸多邊形的頂點可能不是多邊形其他頂點的凸組合。 請問有人可以解釋一下,爲什麼我們應該在凸包的頂點處跳過直角?目前尚不清楚爲什麼 沒有一個凸多邊形的頂點可能是多邊形

    0熱度

    1回答

    我應該讀取文件中的點並將這些點接受爲一個數組,以便我可以實現Grahams Scan,但是我的程序似乎只是接受第一點的任何人都可以幫忙嗎? import java.io.*; import java.util.*; public class Graham { private static int[] get_arr(String input) throws Exception {

    0熱度

    1回答

    我試圖從維基百科僞代碼實施格雷厄姆掃描,並且遇到了將事情轉化爲C#的一些麻煩。也許你不介意看看? 這是我有: public class GrahamScan { public static List<CoordinatesD> Scan(List<CoordinatesD> coordinateslist) { int coordinatesi

    1熱度

    1回答

    我使用格雷厄姆算法找到凸包的代碼運行得很好(它顯示了我想要顯示的多邊形),但是我可以看到它發送給我一個額外的共線點(雖然我處理我的代碼線的點) 這裏是我的代碼: public Collection<Coord> territoire() { double checkPoints; Collection<Coord> sommets = new ArrayList<

    30熱度

    3回答

    問題 可爲用戶提供多達四個緯度和經度座標,以任何順序。他們使用Google地圖進行操作。使用Google的Polygon API(v3),它們選擇的座標應突出顯示四個座標之間的選定區域。 問題 你如何排序緯度的數組和(反)按順時針方向經度座標? 解決方案和搜索 StackOverflow的問題 Drawing resizable (not intersecting) polygons How to

    0熱度

    1回答

    我正在編寫一個程序,使用graham scan來計算凸包的周長,並且需要在一組數據點中找到最低的y座標。我在我的struct point中使用了std::min_element(vector.begin(), vector.end())和超載的<運算符。問題是有些點可能共享相同的最低y座標,在這種情況下,我需要使用它們的x值進行比較。是否有任何快速的欺騙手段來檢查是否有任何其他點與min_elem

    0熱度

    2回答

    我必須實施Graham掃描算法。 這是我的代碼: /* Graham's algorithm' */ #include <stdio.h> #include <stdlib.h> #include <conio.h> #include <stack> #include <vector> #include <math