たとえば、次のようなリストがあります。
L = ["item1", "item2", "item3", "item3", "item3", "item1", "item2", "item4", "item4", "item4"]
それらをフォームのタプルのリストにパックしたい:
[("item1", 1), ("item2", 1), ("item3", 3),... ("item1", 1)]
私はすでに似たようなことをするアルゴリズムを開発しました:
{item1: 2, item2: 2, ...}
(それらが隣接していなくても、すべての出現を見つけてカウントします...)
ただし、同じものを持ち、隣接している (つまり、一緒に並んでいる)アイテムのみをグループ化したいのですが、どうすればこれを達成できますか?
方法がわからないわけではありませんが、長いコードを書く傾向があり、この場合はエレガントで単純なソリューションが必要です。