我有整數列表,我想要創建一個for循環從序列1到n跳過列表中已經存在的元素,那麼這是最好的方法還是有效的方法呢?通過跳過列表中的值來爲序列編寫for循環?
0
A
回答
-1
您可以使用哈希集爲目的它會自動刪除重複的元素。因此,對於您的輸入數組,將每個元素逐個放入哈希集中,最後您的哈希集將包含非重複元素。
在關於hashshet參閱疑惑:https://www.tutorialspoint.com/java/java_hashset_class.htm
1
大多數高效方式,即O(M + N),是將List
轉換爲HashSet
,然後檢查使用contains()
:
Set<Integer> set = new HashSet<>(list);
for (int i = 1; i <= n; i++) {
if (! set.contains(i)) {
// your code here
}
}
如果您未直接轉換爲Set
,並直接使用List
的方法,則性能爲O(mn),其中m是列表中元素的數量。
+0
非常感謝 –
相關問題
- 1. For循環跳過值
- 2. Java - 跳過for循環中的值
- 3. 如何通過Python中的for循環傳遞列表列表?
- 4. 通過webdriver中的列循環列表
- 5. 跳過的for循環
- 6. phpmailer列循環&跳過NULLs
- 7. 值未通過for循環
- 8. For循環增值通過
- 9. 'For'循環被跳過?
- 10. For循環跳過作業
- 11. 通過嵌套for循環的元組列表來擴充列表
- 12. 通過循環列表循環Java
- 13. For循環不通過列迭代[R
- 14. 通過for循環添加值後返回0列表 - c#
- 15. Python for循環跳過其他循環?
- 16. VBA跳過For循環 - 爲什麼?
- 17. 爲什麼for循環在for循環中的列表被更改後跳過第一個元素?
- 18. 蟒列表在子過程for循環
- 19. 通過for循環
- 20. 跳過for循環中的IndexError
- 21. 爲什麼我的布爾值在for循環中被跳過?
- 22. Python中通過多個列表循環
- 23. 通過陣列循環MIPS彙編
- 24. 通過列表項的動畫循環
- 25. 「entirerow.delete」跳過For循環的條目
- 26. 通過嵌套列表循環顯示爲列表
- 27. 循環通過多陣列
- 28. Javascript:通過陣列循環
- 29. 循環通過陣列
- 30. Flex:通過陣列循環
你可以在這裏找到類似的問題https://stackoverflow.com/questions/203984/how-do-i-remove-repeated-elements-from-arraylist –
可能的重複[如何從ArrayList中刪除重複的元素?](https://stackoverflow.com/questions/203984/how-do-i-remove-repeated-elements-from-arraylist) –
這個問題與'hibernate'或'spring-mvc'有什麼關係? – Andreas