【发布时间】:2013-10-01 04:07:51
【问题描述】:
这是我的任务,字符串连接函数在下面,下面是我需要帮助的函数。
type Language = [String]
strcat :: String -> String -> String
strcat [] y = y
strcat (x:xs) y = x:(strcat xs y)
concat_lang :: Language -> Language -> Language
concat_lang [] y = y
concat_lang x [] = x
concat_lang (x:xs) (y:ys) = (strcat x y):(concat_lang (x:xs) ys)
这是我对 concat_lang 的输入: concat_lang ["a","b","c"] ["d","e","f"]
我希望输出为 [ad,ae,af,bd,be,bf,cd,ce,cf]
请帮忙!!
【问题讨论】:
-
提示:使用列表理解和(
++或concat)。 -
你几乎明白了。您的
strcat是正确的,但您在concat_lang中存在问题 - 它永远不会移动到xs中的下一个字符。您需要更多提示吗?
标签: list haskell string-concatenation