資料結構與演算法面試題80道(23)

2022-07-17 04:45:11 字數 528 閱讀 3435

第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...