劍指offer(java代碼)——和爲S的兩個數字

題目描述:輸入一個遞增排序的數組和一個數字S,在數組中查找兩個數,使得他們的和正好是S,如果有多對數字的和等於S,輸出兩個數的乘積最小的。 
這道題友好就友好在給的是一個遞增數組。對於遞增數組,我們可以去計算數組第一個數字和數組最後一個數字的和,如果和小於S,那麼我們就去計算第二個數與最後一個數的和。如果大於S,我們就計算數組第一個數與倒數第二個數的和。這樣做的一個好處是,我們找到的第一個符合條件的兩個數,他們的乘積一定是最小的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章