MathGroup Archive 2005

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: List to string ?

  • To: mathgroup at smc.vnet.net
  • Subject: [mg59687] Re: List to string ?
  • From: "James Gilmore" <james.gilmore at yale.edu>
  • Date: Wed, 17 Aug 2005 04:00:44 -0400 (EDT)
  • Organization: Yale University
  • References: <ddccb4$5vt$1@smc.vnet.net>
  • Sender: owner-wri-mathgroup at wolfram.com

Hi everyone,

The most efficient are:

ToString[Infix[li, ""]];
ToString[FromDigits[li]];
In[243]:=
$Version
Out[243]=
"5.0 for Microsoft Windows (June 11, 2003)"
In[244]:=
li = Table[i, {i, 10^5}];
In[245]:=
Timing[ToString[Infix[li, ""]]; ]
Out[245]=
{0.3300000000000409*Second, Null}
In[246]:=
Timing[ToString[FromDigits[li]]; ]
Out[246]=
{0.22000000000002728*Second, Null}
In[247]:=
Timing[StringJoin[ToString /@ li]; ]
Out[247]=
{0.6909999999999741*Second, Null}
In[248]:=
Timing[StringJoin @@ ToString /@ li; ]
Out[248]=
{0.72199999999998*Second, Null}
In[249]:=
Timing[StringJoin[(ToString[#1] & ) /@ li]; ]
Out[249]=
{0.7810000000000059*Second, Null}



Above about 1.5 10^5 digits, ToString[Infix[li, ""]]; becomes faster:

In[344]:=
li = Table[i, {i, 1.5 10^5}];
In[345]:=
Table[Timing[ToString[Infix[li, ""]]; ],{i,20}];
Sum[%\[LeftDoubleBracket]i\[RightDoubleBracket]/Length[%],{i,Length[%]}]
Out[346]=
{0.4091 Second, Null}
In[347]:=
Table[Timing[ToString[FromDigits[li]]; ],{i,20}];
Sum[%\[LeftDoubleBracket]i\[RightDoubleBracket]/Length[%],{i,Length[%]}]
Out[348]=
{0.4041 Second, Null}

In[349]:=
li = Table[i, {i, 2 10^5}];
In[350]:=
Table[Timing[ToString[Infix[li, ""]]; ],{i,20}];
Sum[%\[LeftDoubleBracket]i\[RightDoubleBracket]/Length[%],{i,Length[%]}]
Out[351]=
{0.55075 Second, Null}
In[352]:=
Table[Timing[ToString[FromDigits[li]]; ],{i,20}];
Sum[%\[LeftDoubleBracket]i\[RightDoubleBracket]/Length[%],{i,Length[%]}]
Out[353]=
{0.58835 Second, Null}


-- 
James Gilmore

Graduate Student
Department of Physics
Yale University
New Haven, CT 06520 USA

"Dr. Wolfgang Hintze" <weh at snafu.de> wrote in message 
news:ddccb4$5vt$1 at smc.vnet.net...
> Given a list li={1,2,3} what is an efficient way to transform it to the
> string st="123"?
>
> Thanks in advance for your help.
>
> Regards,
> Wolfgang
> 



  • Prev by Date: Re: Avoiding parentheses in Formatted or box structures
  • Next by Date: Problem behavior with FindMaximum
  • Previous by thread: List to string ?
  • Next by thread: newbie problem with differential equation