回顧之前的博文,一路走來,從《Java求3個數的最大公約數(3個數都是正整數)》一文中的“從3個數中的任意一個數開始求餘、遞減”;再到《Java求3個數的最大公約數算法優化(3個數都是正整數)》一文中的“3個數的最大公約數必然小於或等於其中最小的數”;經歷了這些算法上的改進之後,我越來越發覺算法其實比想象中的更復雜——哪怕只是一個用來解決簡單問題的算法都可以有無窮的可能。
這一次,我又對“求3個數的最小公倍數”的算法進行了改進,也許這種算法並不是最好的,但是肯定是更好的:
回顧之前的博文,一路走來,從《Java求3個數的最大公約數(3個數都是正整數)》一文中的“從3個數中的任意一個數開始求餘、遞減”;再到《Java求3個數的最大公約數算法優化(3個數都是正整數)》一文中的“3個數的最大公約數必然小於或等於其中最小的數”;經歷了這些算法上的改進之後,我越來越發覺算法其實比想象中的更復雜——哪怕只是一個用來解決簡單問題的算法都可以有無窮的可能。
這一次,我又對“求3個數的最小公倍數”的算法進行了改進,也許這種算法並不是最好的,但是肯定是更好的:
ThreadLocal的使用,,,實際上相當於維護了一個Map,其中以鍵值對的形式,存儲了某一個數據被多個線程訪問所對應的值。當然這個數據只能有
JSONArray序列化日期最初用到, 這個是全局設置,會有風險。 String[] dateFormats = new String[] {"yyyyMMdd"}; JSONUtils.getM