Skip to content

Commit

Permalink
Incorporate review comment.
Browse files Browse the repository at this point in the history
  • Loading branch information
tofische committed Feb 16, 2024
1 parent 38114c0 commit 88f7009
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 3 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,13 @@ module Satellite (treeFromTraversals) where
import Data.Tree ( Tree(Node) )
import Data.Set (fromList, size)

treeFromTraversals :: String -> String -> Maybe (Tree Char)
treeFromTraversals :: Ord a => [a] -> [a] -> Maybe (Tree a)
treeFromTraversals preorder inorder =
if (not.null) preorder && length preorder == size (fromList preorder)
then treeFromTraversals' preorder inorder
else Nothing

treeFromTraversals' :: String -> String -> Maybe (Tree Char)
treeFromTraversals' :: Ord a => [a] -> [a] -> Maybe (Tree a)
treeFromTraversals' preorder inorder = Node root <$> sequence (leftChild <> rightChild)
where
root = head preorder
Expand Down
2 changes: 1 addition & 1 deletion exercises/practice/satellite/src/Satellite.hs
Original file line number Diff line number Diff line change
Expand Up @@ -2,5 +2,5 @@ module Satellite (treeFromTraversals) where

import Data.Tree (Tree)

treeFromTraversals :: String -> String -> Maybe (Tree Char)
treeFromTraversals :: Ord a => [a] -> [a] -> Maybe (Tree a)
treeFromTraversals preorder inorder = error "You need to implement this function."

0 comments on commit 88f7009

Please sign in to comment.