<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-GB">
	<id>https://wiki.kram.nz/index.php?action=history&amp;feed=atom&amp;title=SE250%3Alab-3%3Ashua066</id>
	<title>SE250:lab-3:shua066 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.kram.nz/index.php?action=history&amp;feed=atom&amp;title=SE250%3Alab-3%3Ashua066"/>
	<link rel="alternate" type="text/html" href="https://wiki.kram.nz/index.php?title=SE250:lab-3:shua066&amp;action=history"/>
	<updated>2026-04-29T09:04:06Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.45.3</generator>
	<entry>
		<id>https://wiki.kram.nz/index.php?title=SE250:lab-3:shua066&amp;diff=5813&amp;oldid=prev</id>
		<title>Mark: 33 revision(s)</title>
		<link rel="alternate" type="text/html" href="https://wiki.kram.nz/index.php?title=SE250:lab-3:shua066&amp;diff=5813&amp;oldid=prev"/>
		<updated>2008-11-03T05:19:29Z</updated>

		<summary type="html">&lt;p&gt;33 revision(s)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==task 1==&lt;br /&gt;
===code===&lt;br /&gt;
 int main(){&lt;br /&gt;
     clock_t t0=clock();&lt;br /&gt;
     ArrayList xs;&lt;br /&gt;
     arraylist_init(&amp;amp;xs);&lt;br /&gt;
     int i;&lt;br /&gt;
     for(i=1; i&amp;lt;10000000; i++){&lt;br /&gt;
         arraylist_push(&amp;amp;xs, 10);&lt;br /&gt;
     }&lt;br /&gt;
     printf(&amp;quot;%ld\n&amp;quot;,clock()-t0);&lt;br /&gt;
     return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
===result=== &lt;br /&gt;
 452 436 452 436 437 421&lt;br /&gt;
the average is 440.8&lt;br /&gt;
==task 2==&lt;br /&gt;
change the factor &amp;quot;*2.0&amp;quot;&lt;br /&gt;
                                                 average&lt;br /&gt;
 &amp;quot;*3.0&amp;quot;   359 342 390 328 358 327 327 359 342      348&lt;br /&gt;
 &amp;quot;*4.0&amp;quot;   265 359 358 342 312 343 311 311 327      325.3&lt;br /&gt;
 &amp;quot;*5.0&amp;quot;   343 343 389 342 327 390 358 326 359      353&lt;br /&gt;
 &amp;quot;*6.0&amp;quot;   327 343 327 311 327 358 311 312 265      320&lt;br /&gt;
 &amp;quot;*7.0&amp;quot;   296 311 343 327 296 280 312 280 359      311.5&lt;br /&gt;
 &amp;quot;*8.0&amp;quot;   266 311 296 265 249 327 311 389 343      306&lt;br /&gt;
 &amp;quot;*9.0&amp;quot;   327 296 280 296 311 280 343 296 327      306&lt;br /&gt;
when the factor is bigger , the time takes shorter, and when the factor grow up to 6.0 the time change is shorter shorter.&lt;br /&gt;
==task 3==&lt;br /&gt;
change the restore value of &amp;#039;&amp;#039;&amp;#039; ARRAYLIST_MIN_ALLOC &amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ARRAYLIST_MIN_ALLOC 1&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 468 421 389 421 405 389    ave is 415.5&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ARRAYLIST_MIN_ALLOC 3&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 389 374 405 374 343 358    ave is 373&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ARRAYLIST_MIN_ALLOC 6&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 342 374 359 374 327 358    ave is 355&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ARRAYLIST_MIN_ALLOC 16&amp;#039;&amp;#039;&amp;#039; &lt;br /&gt;
 ave is 348 (num from task 1 above)&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ARRAYLIST_MIN_ALLOC 30&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 389 406 374 359 389 406    ave is 387&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ARRAYLIST_MIN_ALLOC 60&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 359 343 359 390 343 390    ave is 364&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ARRAYLIST_MIN_ALLOC 100&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 374 374 358 343 326 343    ave is 353&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ARRAYLIST_MIN_ALLOC 1000&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 342 405 359 375 358 405    ave is 374&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ARRAYLIST_MIN_ALLOC 10000&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 327 280 311 343 375 374    ave is 335&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ARRAYLIST_MIN_ALLOC 1000000&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 343 358 312 358 405 297    ave is 345.5&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ARRAYLIST_MIN_ALLOC 100000000&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 265 281 280 280 249 311    ave is 277&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ARRAYLIST_MIN_ALLOC 1000000000&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 result is error , number is too big&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;ARRAYLIST_MIN_ALLOC 10000000000&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
 comeout lots of warnings&lt;br /&gt;
==task 4==&lt;br /&gt;
===code===&lt;br /&gt;
 int main(){&lt;br /&gt;
     clock_t t0=clock();&lt;br /&gt;
     ArrayList xs;&lt;br /&gt;
     arraylist_init(&amp;amp;xs);&lt;br /&gt;
     ensure_capacity(&amp;amp;xs,10000000);&lt;br /&gt;
     int i;&lt;br /&gt;
     for(i=1; i&amp;lt;10000000; i++){&lt;br /&gt;
         arraylist_push(&amp;amp;xs, 10);&lt;br /&gt;
     }&lt;br /&gt;
     printf(&amp;quot;%ld\n&amp;quot;,clock()-t0);&lt;br /&gt;
     return 0;&lt;br /&gt;
 }&lt;br /&gt;
===result===&lt;br /&gt;
 312 296 342 343 264 280 265 &lt;br /&gt;
 average is 300&lt;br /&gt;
&lt;br /&gt;
==task 5==&lt;br /&gt;
change the &amp;#039;&amp;#039;&amp;#039;arraylist_put&amp;#039;&amp;#039;&amp;#039; replay&amp;quot;*2&amp;quot;with adding some numbers&lt;br /&gt;
&lt;br /&gt;
+1000 n=1000000 push=10&lt;br /&gt;
 31 31 15 30 46 31&lt;br /&gt;
 average is 30.6&lt;br /&gt;
+10000 n=1000000 push=10&lt;br /&gt;
 46 47 46 51 31 15&lt;br /&gt;
 average is 39.3&lt;br /&gt;
+100000 n=1000000 push=10&lt;br /&gt;
 31 46 31 15 30 16&lt;br /&gt;
 average is 28.2&lt;br /&gt;
+1000000 n=1000000 push=10&lt;br /&gt;
 31 15 31 15 63 31&lt;br /&gt;
 average is 31&lt;br /&gt;
+5000000 n=1000000 push=10&lt;br /&gt;
 15 30 31 31 46 15&lt;br /&gt;
 average is 28&lt;br /&gt;
&lt;br /&gt;
when the adding the number is bigger , the time is change up and down ,and in adding the same number(like &amp;quot;+1000000 n=1000000 push=10&amp;quot;),time is change as well, sometimes is only 15 ,and sometimes is 30, but ever sometimes it change to 63 as well , so strange.&lt;br /&gt;
&lt;br /&gt;
==task 6==&lt;br /&gt;
===code===&lt;br /&gt;
 int main(){&lt;br /&gt;
     clock_t t0=clock();&lt;br /&gt;
     ArrayList xs;&lt;br /&gt;
     arraylist_init(&amp;amp;xs);&lt;br /&gt;
     int i;&lt;br /&gt;
     for(i=1; i&amp;lt;10000000; i++){&lt;br /&gt;
         arraylist_put(&amp;amp;xs, 10,0);&lt;br /&gt;
     }&lt;br /&gt;
     printf(&amp;quot;%ld\n&amp;quot;,clock()-t0);&lt;br /&gt;
     return 0;&lt;br /&gt;
 }&lt;br /&gt;
&lt;br /&gt;
===result===&lt;br /&gt;
it takes very very long time to finish it .&lt;br /&gt;
so , i  change the number of n to 100000&lt;br /&gt;
 3260 3198 3182 3135 3322&lt;br /&gt;
 average is 3219&lt;/div&gt;</summary>
		<author><name>Mark</name></author>
	</entry>
</feed>