第23題(演算法):
用最簡單,最快速的方法計算出下面這個圓形是否和正方形相交。"
3d座標系 原點(0.0,0.0,0.0)
圓形:半徑r = 3.0
圓心o = (*.*, 0.0, *.*)
正方形:
4個角座標;
1:(*.*, 0.0, *.*)
2:(*.*, 0.0, *.*)
3:(*.*, 0.0, *.*)
4:(*.*, 0.0, *.*)
沒搞懂座標給的是什麼意思,*.*表示座標的值?
也不清楚圓和正方形是不是實心。如果是實心,那麼內含也是相交。如果是空心,內含就是不相交。
單單說說圓形與正方形是否相交吧。
思路:通過長度判斷角是不是在圓內。直接計算角到圓心的距離,如果大於則不再園內,小於或等於則算在圓內,相交。
如果是實心。這樣就可以判斷是否相交了。如果是空心,如果有乙個角到圓心的距離等於半徑,那麼一定相交。否則要判斷四個角,如果四個角都在園內(距離小於半徑),那麼不相交(圓內含正方形)。
資料結構與演算法面試題80道
問題分析 二叉查詢樹是一種二叉樹的結構,其中,根節點的值大於左子樹的值,小於右子樹的值。而二叉查詢樹的中序遍歷即為排序的結果。對於根節點,前驅指標指向左子樹中最大的節點,同理,後驅指標指向右子樹中最小的節點,如下圖所示 樹是一種遞迴的結果,因此,對於左右子樹,也需要執行相同的操作。方法 bstree...
資料結構與演算法面試題80道(19)
第19題 題目 定義 fibonacci 數列如下 0 n 0 f n 1 n 1 f n 1 f n 2 n 2 輸入n,用最快的方法求該數列的第n項。分析 在很多 c語言教科書中講到遞迴函式的時候,都會用 fibonacci 作為例子。因此很多程式設計師對這道題的遞迴解法非常熟悉,但.呵呵,你知...
資料結構與演算法面試題
1。計算二叉樹的深度 獲取最大深度 public static intgetmaxdepth treenode root 2。折半查詢 非遞迴 package althorgrim 1 必須採用順序儲存結果 2 關鍵字必須有序 author hanrk 2734 public class testb...