gpt4 book ai didi

Haskell 奇异运算符

转载 作者:行者123 更新时间:2023-12-03 14:40:08 25 4
gpt4 key购买 nike

对于我的函数式编程课的作业,我正在做一个关于树的练习。更具体地说是在玫瑰树上。在我们得到数据类型'Rose'的框架中已经定义了,但是它有一个操作符:>。我在hoogle上搜索它,它说它是序列的最右边的元素和序列的其余部分。 (以下框架的一部分)

data Rose a = a :> [Rose a]
deriving (Eq, Show)

-- Exercise 1

root :: Rose a -> a
root = undefined

children :: Rose a -> [Rose a]
children = undefined

我绝不需要你们告诉我应该如何制作根和子功能。但是,如果你们能给我一些关于如何阅读“数据玫瑰”行的提示,或者告诉我如何建立一棵玫瑰树。当我喜欢做练习时,这些东西将是一个非常大的帮助。

我希望有人能指出我正确的方向。

最佳答案

t 与列表的定义非常相似:

  • (:>)有点像 (:)
  • data Rose a = a :> [Rose a]告诉你,你可以获得 t :: Rose a
  • 带有元素 x :: a
  • 和 child rs :: [Rose a]
  • 通过 t = x :> rs

  • 当然你也可以取回这样的元素:
    root (x :> rs) = ... 

    我希望你自己得到剩下的;)

    关于Haskell 奇异运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32700129/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com