scheme 中 list 和 vector 的访问速度

时间:2015-03-26 17:54:01   收藏:0   阅读:416


list 类似于 Cpp 中的链表,不支持随机访问,访问时间和 index 成正比

vector 支持


#lang scheme

( define size 10000000 )
( define vec ( make-vector size ) )
( define index ( - size 1 ) )

( time ( for ( [ _ size ] )
          ( vector-ref vec 0 ) ) )
( time ( for ( [ _ size ] )
          ( vector-ref vec index ) ) )

cpu time: 609 real time: 606 gc time: 0
cpu time: 577 real time: 626 gc time: 0



( define size1 1000 ) 
( define lst ( make-list size1 0 ) )
( define index1 ( - size1 1 ) )

( time ( for ( [ _ size ] )
          ( list-ref lst 0 ) ) )
( time ( for ( [ _ size ] )
          ( list-ref lst index1 ) ) )

cpu time: 608 real time: 606 gc time: 0
cpu time: 14461 real time: 14518 gc time: 0


原文:http://blog.csdn.net/pandora_madara/article/details/44650413

评论(0
© 2014 bubuko.com 版权所有 - 联系我们:wmxa8@hotmail.com
打开技术之扣,分享程序人生!