From 9d9cfd3c2f7ab36982cb569027cf831e95ee42ea Mon Sep 17 00:00:00 2001 From: Joe Zhao Date: Thu, 28 Jan 2016 13:27:16 -0700 Subject: sort --- AATree/AATree.hs | 2 +- AATree/testTree.hs | 21 ++++++++++++++------- 2 files changed, 15 insertions(+), 8 deletions(-) (limited to 'AATree') diff --git a/AATree/AATree.hs b/AATree/AATree.hs index 72698f7..2542951 100644 --- a/AATree/AATree.hs +++ b/AATree/AATree.hs @@ -1,4 +1,4 @@ -module AATree where +module AATree.AATree where data AATree a = Node { level :: Int, diff --git a/AATree/testTree.hs b/AATree/testTree.hs index a9fea3f..6d625e7 100644 --- a/AATree/testTree.hs +++ b/AATree/testTree.hs @@ -1,10 +1,17 @@ -import AATree - -setup = foldl insert Nil [1..20] +import AATree.AATree +import Criterion.Main +import Shuffle +import Control.DeepSeq +import Data.List +import Sort.Sort main = do - let t = setup - putStrLn (show $ foldr (:) [] t) + xs <- shuffle ([1..5000]::[Int]) + defaultMain [ + bench "sort" (nf sort xs), + bench "msort" (nf msort xs), + bench "aasort" (nf aasort xs), + bench "head-sort" (nf (head.sort) xs), + bench "head-msort" (nf (head.msort) xs), + bench "head-aasort" (nf (head.aasort) xs)] -sort [] = [] -sort (x:xs) = sort [ i | i<-xs, i=x]) -- cgit v1.2.3-70-g09d2