所以我有一個列表的列表找到[最大值,最小值在列表蟒列表值
alist = [[distance1,delta-angle1,object1],[distance2,delta-angle2,object2], [distance3,delta-angle3,object3],...]
我想最大限度地爲「距離」和最小化「增量角」,這是是每個list
的前兩個元素在alist
中,並返回該特定列表。
警告:distance
將是一個浮子和delta-angle
將在度(-180:180)
的目標是選擇與「直的」角度的最長距離,但不只是最長或「直接「(或稱爲最小化角度變化)
編輯:我無法上傳圖像,所以這裏是一個鏈接。
http://imgur.com/a/b6KWM#YqGxdlu
我想避免「回去我在那裏」在這種特殊情況下。 作爲第二圖像中所示
IMAGE 2
第三圖像是理想的 - 並且由於我還沒有想到的一個更好的方式來說明這一點:最小化從當前軸承的角度變化(其Δ-角度是什麼被存儲在alist
已經),增加可用線段的distance
或長度(在下面的圖片這裏表示由上邊界端點)
IMAGE 3 http://imgur.com/a/b6KWM#YqGxdlu
您定義的「最長距離與最直角」非常模糊 - 您能定義一個效用函數嗎?如果你有一對元素,你怎麼能決定哪一個更好? – 2013-02-12 00:51:45
直到你真正給出了一個選擇哪一個更好的特定公式,你才能真正得到答案。有了這些之後,您可以在指定密鑰時使用排序。 (更多閱讀:http://wiki.python.org/moin/HowTo/Sorting/) – placeybordeaux 2013-02-12 01:01:42
此外,爲什麼你認爲你需要「把[角度]放在[0 ... 360]的範圍內」最小化它?你真的想要89°被認爲比-45°更小嗎?如果不是,則將其保留爲[-180,180],並將「abs(角度)」而不是「角度」最小化。 – abarnert 2013-02-12 01:07:48