Учитывая список кортежей, например:
dic = [(1,"aa"),(1,"cc"),(2,"aa"),(3,"ff"),(3,"gg"),(1,"bb")]
Как группировать элементы dic, приводящие к списку grp где,
grp = [(1,["aa","bb","cc"]), (2, ["aa"]), (3, ["ff","gg"])]
Я на самом деле новичок в Haskell... и, кажется, влюбился в него.
Использование группы или groupBy в Data.List будет группировать только похожие смежные элементы в списке.
Я написал для этого неэффективную функцию, но это приводит к сбоям памяти, поскольку мне нужно обработать очень большой кодированный список строк. Надеюсь, вы поможете мне найти более эффективный способ.