問題描述例如有一個數組,存儲的是一些整點數據,無排序無規律,ex:$hours=[1,3,6,2,13,16,18,20];現在需要快速得出當前時間最接近的整點數,如果當前整點在數組內,則為當前整點,如果不在,則獲取下一個最接近的整點數,依次類推。整點數應該大于等于當前整點,但是得判斷跨天的情況,列如當前時間點是21點,那符合條件的應該是1。問題出現的環境背景及自己嘗試過哪些方法因為是時間整點,所以是24進制,沒法直接判斷最臨近的數,所以目前想到的辦法是循環這個數組,依次拼接出各個時間戳(還得判斷是否為跨天),然后當前時間戳做減法,取絕對值,然后按照這個差值進行排序,獲取符合條件的數,總覺得效率不高,請問有更好的解法嗎?
急求!?。?!PHP 獲取下一個符合條件的整點數
慕工程0101907
2019-10-31 10:20:42