算法和代碼快捷方式,以學(xué)習(xí)成為更好的開發(fā)人員。以下是您可以使用的6種算法和提示:
1.如何查找數(shù)組中缺少的數(shù)字
首先,讓我們看一下下面的代碼,然后讓我們一起討論它:
看完上面的算法代碼,我們一起來討論幾個問題:
(1)如果數(shù)組中缺少兩個數(shù)字,是否仍可這樣使用?如果不能使用,我該怎么辦?
解釋: 這個答案是否定的。上述方法只能通過從1開始,用算術(shù)級數(shù)求和,減去總和來獲得正確的答案。
(2)如果數(shù)組不是從1開始的,這種方法是否可行,如果不是,如何解決它?
解釋:如果它不從 1 開始,它將不起作用。請看以下方法:
(3)你還有其他更好的方法或方法嗎?
解釋: 也有很多同學(xué)提到了以下方法:先刪除重復(fù)項(xiàng),再從小到大排序,然后遍歷,觀察數(shù)字和索引是否匹配,如果不匹配,數(shù)字-1就是缺失的數(shù)字
2. 如何反轉(zhuǎn)整數(shù)
事不宜遲,讓我們直接看一下下面的代碼:
在閱讀了上述編寫反向整數(shù)的方法之后,讓我們一起考慮以下方法。讓我們一起來想,這樣更好嗎?然后里面有負(fù)數(shù),那么如何處理呢?然后,我們將按以下方式查看:
3. 什么是字符串乘法?
對于字符串乘法,讓我們做一個簡單的,如下所示:
在閱讀了字符串的乘法后,很多朋友說操作結(jié)果會自動轉(zhuǎn)換。您的測試結(jié)果是什么?歡迎在評論區(qū)留言討論。
4.讓我們一起看一下克隆數(shù)組,在我看來,以下縮寫更簡單:
當(dāng)然,在這里,我們也可以使用Arrae中的slice()方法來輕松克隆陣列。這種方法相對常見,因此我們不會詳細(xì)介紹,但您可以考慮通常如何編寫它。
5.一起看一下for循環(huán)為了簡化代碼,我將使用它們...的語句來實(shí)現(xiàn),因?yàn)橐赃@種方式代碼會更簡潔。讓我們一起討論以下編寫方法:
當(dāng)我第一次開始編程時,我通常使用for循環(huán)來循環(huán)遍歷數(shù)組,這樣它就會有點(diǎn)復(fù)雜。你們用什么方法?我們可以一起討論。
6. 什么是數(shù)組解構(gòu)?
當(dāng)我們處理數(shù)組時,很多時候,我們大多數(shù)人都會將數(shù)組“解包”成許多變量。事實(shí)上,這種方法太復(fù)雜了。在這里,讓我們了解解構(gòu)賦值以及如何使用一行代碼來實(shí)現(xiàn)相同的結(jié)果:
閱讀完上面的代碼后,您還可以考慮在使用數(shù)組處理的“解包”方法時哪一個更符合您通常的用法。