我正在學習Ruby和新手。有人可以幫助我解決這個問題: 可以將所有數值相等的數字連續添加到數組中。示例 我有一個數組= [1,2,2,2,5,2,6],我希望它使用Ruby語言返回array = [1,6,5,2,6]。在此先感謝您的幫助。程序添加所有相同的數字,但在一個數組中連續
回答
試試這個
[1, 2, 2, 2, 5, 2, 6].chunk_while(&:equal?).flat_map(&:sum)
=> [1, 6, 5, 2, 6]
chunk_while
允許您根據條件組連續元素。之後,你有n個組(n個數組,也許其中一些只有一個元素)。現在你想每個單獨的數組有不同的東西(它的元素的總和)map
。最後的細節:flat_map
,而不是map
,因爲我們想要一個數組,而不是一個數組數組。
https://meta.stackoverflow.com/questions/256328/vote-to-close-unclear-questions-immediately-after-commenting and https://meta.stackoverflow.com/questions/260263/how -long-should-we-wait-for-poster-to-clarify-a-question-before-closing –
對不起人:( – Ursus
也考慮解釋爲什麼代碼可以工作而不是扔掉它。記住, SO是一本參考書,所以我們需要幫助別人學習[教,不只是回答](https://meta.stackoverflow.com/a/291533/128421) –
- 1. 在數組中添加所有數字
- 2. 在一個數組中加上所有相同的元素
- 3. 如何在一個字符串中添加連續的數字
- 4. 在每行中添加連續數字
- 5. 計算連續有多少個數字具有相同的值
- 6. 如何合併具有相同數據的連續子數組?
- 7. r中沒有連續的相同數字的採樣
- 8. 在具有相同數量的數組中編寫一個數字,如數字
- 9. 在C++中添加一個字符串的所有數字
- 10. 向一個元組中的所有值添加一個整數
- 11. 編寫一個程序,將一個數組中的所有奇數加起來
- 12. 在javascript中將兩個數組中的所有數字相乘
- 13. autohotkey:添加連續的數字範圍
- 14. 找出是否所有的,但只有一個數組元素是相同的
- 15. 你怎麼知道一個數組是否具有相同的連續元素?
- 16. 在排序的連續數組中找到丟失的數字
- 17. 添加兩個數組長度相同
- 18. 連續編程的C++相同字母
- 19. 在組中搜索連續的數字
- 20. 如何添加另一個相同的圖表,但具有不同的數據?
- 21. 創建一個數組與舊的相同的數字,但沒有重複
- 22. 將數組中的所有數字相加的方法
- 23. 添加一個範圍內的所有數字,包括數字
- 24. 將數組劃分爲2^N,然後將所有數字一起添加到後續數組中
- 25. 在列表中找到相同和連續的數字
- 26. Javascript在變量中添加相同數字的數字
- 27. 在兩個不同的數組中找到3個相等的連續數字。 Java
- 28. 數組鍵值相同,但將值添加到vlaues中?
- 29. 在R中的大矩陣中添加連續的四個/ n個數字
- 30. 將一個數組添加到同一個循環中的另一個數組
歡迎來到Stack Overflow。請閱讀「[問]」,「[mcve]」和鏈接的頁面。你的問題不適合Stack Overflow。我們希望看到你的努力的證據。您是否在尋找解決方案?哪裏?爲什麼結果沒有幫助?你寫代碼了嗎?如果不是,爲什麼?如果是這樣,那麼證明你所問的問題的最小代碼是什麼?如果沒有這些,看起來你希望我們爲你寫一個解決方案,這是無關緊要的。如果這是作業閱讀「[我如何問和回答作業問題?](https://meta.stackoverflow.com/questions/334822)」 –
感謝您的意見。我一直在努力,但只能添加兩個數字,而不是三個或更多的連續數字。感謝您的幫助 –